[systemd-devel] Can kdbus send signal to the source connection?

eshark eshark77 at 163.com
Sat Jun 20 19:28:33 PDT 2015


Hi,
    After removing /usr/lib/systemd/systemd-cgroups-agent,  all seems to work OK.


Thank you for your help!


Best Regards,
Li Cheng






At 2015-06-17 18:16:06, "eshark" <eshark77 at 163.com> wrote:

Hi,
     With my kdbus broadcast patch, I found that the "systemd" process would endlessly emit the signal "type=signal sender=:1.2 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released ".    What does this signal  mean ?


    I searched the source codes, and found that systemd-cgroups-agent would  send this signal. But from the log, systemd-cgroups-agent only send this signal several times , not endlessly.


And I cannot locate the place where "systemd" send such signal. 


Following are the logs:


<27>[    3.633361 at 3] systemd-cgroups-agent[196]: Lch-sd_bus_emit_signal org.freedesktop.systemd1.Agent Released
<27>[    3.633660 at 2] systemd-cgroups-agent[216]: Lch-sd_bus_emit_signal org.freedesktop.systemd1.Agent Released
<6>[    3.633989 at 2] Lch-kdbus_bus_broadcast: conn_dst->id = 0x14, pid = 216, pid name = systemd-cgroups, tid = 216, tid name = systemd-cgroups
<30>[    3.634008 at 2] systemd-cgroups-agent[216]: Lch-Sent message type=signal sender=n/a destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cooki
e=1 reply_cookie=0 error=n/a
<30>[    3.648452 at 0] systemd[1]: Lch-Got message type=signal sender=:1.2 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cookie
=0 error=n/a
<6>[    3.650378 at 0] EXT4-fs (mmcblk0p9): re-mounted. Opts: (null)
<6>[    3.652074 at 3] Lch-kdbus_bus_broadcast: conn_dst->id = 0x12, pid = 196, pid name = systemd-cgroups, tid = 196, tid name = systemd-cgroups
<30>[    3.652220 at 3] systemd-cgroups-agent[196]: Lch-Sent message type=signal sender=n/a destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cooki
e=1 reply_cookie=0 error=n/a
<6>[    3.652284 at 3] Lch-kdbus_bus_broadcast: conn_dst->id = 0x2, pid = 1, pid name = systemd, tid = 1, tid name = systemd
<30>[    3.653329 at 3] systemd[1]: Lch-Sent message type=signal sender=:1.2 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cooki
e=0 error=n/a


<30>[    3.654166 at 3] systemd[1]: Lch-Got message type=signal sender=:1.20 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cooki
e=0 error=n/a
<6>[    3.654642 at 3] Lch-kdbus_bus_broadcast: conn_dst->id = 0x2, pid = 1, pid name = systemd, tid = 1, tid name = systemd
<30>[    3.654784 at 3] systemd[1]: Lch-Sent message type=signal sender=:1.20 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cook
ie=0 error=n/a
<30>[    3.654958 at 3] systemd[1]: Lch-Got message type=signal sender=:1.18 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cooki
e=0 error=n/a
.......


<6>[  809.109334 at 1] Lch-kdbus_bus_broadcast: conn_dst->id = 0x2, pid = 1, pid name = systemd, tid = 1, tid name = systemd
<30>[  809.109397 at 1] systemd[1]: Lch-Sent message type=signal sender=:1.2 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cooki
e=0 error=n/a
<30>[  809.109481 at 1] systemd[1]: Lch-Got message type=signal sender=:1.2 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cookie
=0 error=n/a
<6>[  809.109726 at 1] Lch-kdbus_bus_broadcast: conn_dst->id = 0x2, pid = 1, pid name = systemd, tid = 1, tid name = systemd
<30>[  809.109789 at 1] systemd[1]: Lch-Sent message type=signal sender=:1.2 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cooki
e=0 error=n/a
<30>[  809.109872 at 1] systemd[1]: Lch-Got message type=signal sender=:1.2 destination=n/a object=/org/freedesktop/systemd1/agent interface=org.freedesktop.systemd1.Agent member=Released cookie=1 reply_cookie
=0 error=n/a






Thanks!
Li Cheng



At 2015-06-17 14:11:11, "eshark" <eshark77 at 163.com> wrote:

Hi,
   I'm so sorry for not giving you more details,  I'm a freshman here, but I'll try to do better in the future.
I will give the answers under each of the questions .

At 2015-06-16 18:54:23, "David Herrmann" <dh.herrmann at gmail.com> wrote:
>Hi
>
>On Tue, Jun 16, 2015 at 12:07 PM, eshark <eshark77 at 163.com> wrote:
>> At 2015-06-16 15:54:10, "David Herrmann" <dh.herrmann at gmail.com> wrote:
>>>Can you be more specific, please? What do you mean by "network module
>>>of our systemd cannot work OK"?
>>
>

>Does this only happen with kdbus?
Yes.  It's OK with DBus.
>Does this only happen with you kdbus-patch to make broadcasts being
>sent to oneself?
Yes. Without modifying kdbus_bus_broadcast(),  I can always get the ip.
>Or does it happen with unmodified kdbus, too?
Never.
>What exactly changes?
I just commented out the following two lines in the kdbus_bus_broadc
//         if (conn_dst->id == kmsg->msg.src_id)
//                continue;


>Does everything work perfectly well without kdbus?
As for network, it did work well without my patch.


>Is the missing DHCP connectivity the only difference you see with kdbus?
Acctually, I  cannot connet to the device by "adb". But  I did run "netcfg" in the terminal, and eth0 didn't get ip as before.


>What kdbus version do you run?
kdbus-4.1-rc1
>What kdbus tree do you use?
https://git.kernel.org/cgit/linux/kernel/git/gregkh/char-misc.git/
>What systemd version do you use? (in case of git: which commit?)
systemd v219 
commit: d736e4f3e76daca4ab1b1fc444737e5ee20a27cd


>Did you pass --enable-kdbus to systemd?
Yes , I did.
>What upstream kernel version do you use?
3.10.33, we back-ported the kdbus to our kernel.


>Any obscure messages in the system-log that you didn't see before? 
From dmesg , I can see that the "systemd" process  calls kdbus_bus_broadcast() endlessly, and the condition " if (conn_dst->id == kmsg->msg.src_id)" is always true.
It seems that  when booting,  the "systemd " process enters a  dead loop by  sending some signal to the source connection. 
So , systemd cannot boot any  service , including network.


Thanks!
Li Cheng 
>...
>
>Please try to paste as much information as possible. Otherwise, it's
>really a hassle to ask for each piece of information separately.
>
>Thanks
>David















-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20150621/fb72c6cf/attachment-0001.html>


More information about the systemd-devel mailing list