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

From: Kay Sievers
Date: Fri Aug 19 2011 - 06:26:53 EST


On Fri, Aug 19, 2011 at 11:13, Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote:
> Milan Broz <mbroz@xxxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/