[dm-devel] clone() with CLONE_NEWNET breaks kobject_uevent_env()

Kay Sievers kay.sievers at vrfy.org
Fri Aug 19 10:26:30 UTC 2011


On Fri, Aug 19, 2011 at 11:13, Eric W. Biederman <ebiederm at xmission.com> wrote:
> Milan Broz <mbroz at redhat.com> writes:
>> If you run clone() with CLONE_NEWNET (which is chromium using
>> for sanboxing), udev namespace is cloned too (newly registered
>> in uevent_sock_list) and netlink send (except the first in list)
>> fails with -ESRCH.
>>
>> This causes that _every_ call of kobject_uevent_env() return failure.

> That netlink_ broadcast chooses to treat failure to deliver a packet to
> anyone as an error and return -ESRCH is a little peculiar.  In general
> we don't see that error because when you are testing there is at least
> one listener on the netlink socket.  So as a practical matter I think
> we should be ignoring return values of -ESRCH from netlink_broadcast,
> in kobject_uevent_env.

Wouldn't a wrap in netlink_has_listeners() help before we try to send it?

Kay




More information about the dm-devel mailing list