【问题标题】:which process is sending SIGKILL哪个进程正在发送 SIGKILL
【发布时间】:2015-02-11 11:41:49
【问题描述】:

在我的 linux 系统中,我有一个很早就启动的守护进程(在启动期间)。 启动期间的守护进程只是初始化 g_dbus 名称。 具体来说:

        guint id = g_bus_own_name ( G_BUS_TYPE_SESSION,
                            DBUS_NAME,
                            G_BUS_NAME_OWNER_FLAGS_NONE,
                            bus_acquired_handler,
                            name_acquired_handler,
                            name_lost_handler,
                            NULL,
                            NULL);

但令我惊讶的是,我总是得到这个:

        ##### deliver signal SIG : 9, [BT]<Process Name>#1(679) get_signal_to_deliver
        ##### deliver signal SIG : 9, [BT]<Process Name>#2(681) get_signal_to_deliver

我也试过这个:

        dmesg | grep -i 'killed process'

但问题是,不知何故,dmesg 是空的。 (我认为这是有目的的)

我还检查了我的进程中的全局和静态变量,我没有分配大内存。此外,也没有内存泄漏

我的进程在系统中也有 root 权限,所以这也不是问题。

最后一点。在从 systemd (这个守护进程的)两次或那里自动重启之后,完全没有问题。

有人可以帮助理解这种行为吗?以便我能够修复。

【问题讨论】:

    标签: linux crash signals dbus sigkill


    【解决方案1】:

    我解决了我的问题。 虽然,我不是这方面的专家,但这是我如何解决的,这让我得出了正在发生的事情的结论。

    首先解决方案,然后我们将尝试推理。

    检查系统总线是否启动:

              while(conn==NULL) {
                 dbus_bus_get(DBUS_BUS_SYSTEM,&err);
                 if(dbus_error_is_set(&err)){
                     usleep(1000*50);
                  }
    

    之后只需获取系统总线:

        guint id = g_bus_own_name ( G_BUS_TYPE_SYSTEM,
                            DBUS_NAME,
                            G_BUS_NAME_OWNER_FLAGS_NONE,
                            bus_acquired_handler,
                            name_acquired_handler,
                            name_lost_handler,
                            NULL,
                            NULL);                    
    

    现在没有信号,守护进程运行顺利。

    现在原因。 我想,早些时候我试图获取会话总线,在启动时它没有被创建,因此内核正在向我的进程发送信号 9。所以,我转向系统总线,它比会话总线早得多。 此外,在获得系统总线之前,有必要确保 system_bus 已启动并因此得到解决方案。

    要回答哪个进程正在发送sigkill,在我看来,没有特别的进程。它来自内核本身。

    希望这对其他人也有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-17
      • 1970-01-01
      • 2020-10-23
      • 2012-01-31
      • 2019-10-25
      • 1970-01-01
      • 1970-01-01
      • 2021-06-29
      相关资源
      最近更新 更多