On 5 Feb 2022, at 14:50, Benjamin Coddington wrote: > On 5 Feb 2022, at 13:24, Trond Myklebust wrote: > >> On Sat, 2022-02-05 at 10:03 -0500, Benjamin Coddington wrote: >>> Hi all, >>> >>> Is anyone using a udev(-like) implementation with >>> NETLINK_LISTEN_ALL_NSID? >>> It looks like that is at least necessary to allow the init namespaced >>> udev >>> to receive notifications on /sys/fs/nfs/net/nfs_client/identifier, >>> which >>> would be a pre-req to automatically uniquify in containers. >>> >>> I'md interested since it will inform whether I need to send patches >>> to >>> systemd's udev, and potentially open the can of worms over there. >>> Yet its >>> not yet clear to me how an init namespaced udev process can write to >>> a netns >>> sysfs path. >>> >>> Another option might be to create yet another daemon/tool that would >>> listen >>> specifically for these notifications. Ugh. >>> >>> Ben >>> >> >> I don't understand. Why do you need a new daemon/tool? Because what we've got only works for the init namespace. Udev won't get kobject notifications because its not using NETLINK_LISTEN_ALL_NSIDs. We need to figure out if we want: 1) the init namespace udevd to handle all client_id uniquifiers 2) we expect network namespaces to run their own udevd 3) or both. I think 2 violates "least surprise", and 3 might not be something anyone ever wants. If they do, we can fix it at that point. So to make 1 work, we can try to change udevd, or maybe just hacking about with nfs_netns_object_child_ns_type will be sufficient. Ben