So this is the 2nd incarnation of the inotify-limits per namespace, following the lenghty discussions with Eric Biederman. The core of the series lies in patch 3, as this contains most of the code to implement the new semantics. The major difference is now that inotify limits are going to be accounted per-user/per-namespace. Patch 1 adds a __HASHTABLE_INITIALIZER, much in the same way as other kernel constructs have, so that one can use them directly into structure definitions. It's a self-contained patch Patch 2 is unchanged from the previous submissions and just renames some defines in various networking files, implementing their own hashtable as this creates certain warnings due to hashtable.h inclusion in linux/user_namespace.h. This has already been acked-by David Miller. Patch 3 is the core, it implements all the necessary changes to allow. More information about the implementation in the patch changelog. This has been completely changed than in the first submission to cope with the requirements that emerged in discussion with Eric Biederman. Patch 4 is plain conversion, to the new interface inotify code structure. The series has received moderate testing in a KVM guest, using the stress-ng to create multiple inotify instances and test whether the locking is correct which seems to be the case. I've tested with 2/3 level hierarchies of namespaces. Nikolay Borisov (4): hashtable: Add __HASHTABLE_INITIALIZER misc: Rename the HASH_SIZE macro userns/inotify: Initial implementation of inotify per-userns inotify: Convert to using new userns infrastructure fs/logfs/dir.c | 6 +- fs/notify/inotify/inotify.h | 25 ++++ fs/notify/inotify/inotify_fsnotify.c | 16 ++- fs/notify/inotify/inotify_user.c | 240 +++++++++++++++++++++++++++++-- include/linux/fsnotify_backend.h | 3 + include/linux/hashtable.h | 3 + include/linux/sched.h | 4 - include/linux/user_namespace.h | 10 ++ kernel/user.c | 5 + kernel/user_namespace.c | 22 ++- net/ipv6/ip6_gre.c | 8 +- net/ipv6/ip6_tunnel.c | 10 +- net/ipv6/ip6_vti.c | 10 +- net/ipv6/sit.c | 10 +- security/keys/encrypted-keys/encrypted.c | 32 ++--- 15 files changed, 345 insertions(+), 59 deletions(-) -- 2.5.0 _______________________________________________ Containers mailing list Containers@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/containers