Re: [PATCH 0/5] Make /sys/class/net per net namespace objects belong to container
From: David Miller
Date: Mon Aug 22 2016 - 02:41:54 EST
From: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
Date: Tue, 16 Aug 2016 15:33:10 -0700
> There are objects in /sys hierarchy (/sys/class/net/) that logically belong
> to a namespace/container. Unfortunately all sysfs objects start their life
> belonging to global root, and while we could change ownership manually,
> keeping tracks of all objects that come and go is cumbersome. It would
> be better if kernel created them using correct uid/gid from the beginning.
>
> This series changes kernfs to allow creating object's with arbitrary
> uid/gid, adds get_ownership() callback to ktype structure so subsystems
> could supply their own logic (likely tied to namespace support) for
> determining ownership of kobjects, and adjusts sysfs code to make use of
> this information. Lastly net-sysfs is adjusted to make sure that objects in
> net namespace are owned by the root user from the owning user namespace.
>
> Note that we do not adjust ownership of objects moved into a new namespace
> (as when moving a network device into a container) as userspace can easily
> do it.
As shown by the kbuild robot, this fails to build when CONFIG_SYSFS
it disabled.