At least as far as the tagging goes, each namespace which needs to do
this (network, devices, and user, at least) will add a field to the
tag structure and call sysfs_enable_tagging() on the relevant
directories. So no more core sysfs changes should be needed, as Eric
tried to make this generic enough to be generally useful.
sysfs/kobject layer has to somehow decide what to show for
/sys/class/net contents based on the mountpoint, right, so I don't see
how the network subsystem could do it.
The only non-tagging alternative I'd see would be to keep entirely
separate kobject pools for each namespace. To do that we'd probably
want to break /sys/class/net into a separate fs that can be
remounted, so at least we don't have to keep the rest of the kobject
pools (/sys/firmware, kernel, etc) in sync...
Eric had mentioned before breaking /sys into multiple mountpoints, so
I'll assume the fact that he implemented tagging means that there was
too much cross-linking and whatnot across the /sys tree to make that
feasible.
More importantly, that approach would require more core sysfs changes
for the next namespace, whereas the tagging approach does not!
thanks,
-serge
--