[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