From: Nikolay Borisov <kernel-6AxghH7DbtA@public.gmane.org>
To: ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org
Cc: jack-AlSwsSmVLrQ@public.gmane.org,
avagin-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org,
containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
serge.hallyn-GeWIH/nMZzLQT0dZR+AlfA@public.gmane.org,
operations-/eCPMmvKun9pLGFMi4vTTA@public.gmane.org,
Nikolay Borisov <kernel-6AxghH7DbtA@public.gmane.org>,
gorcunov-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org
Subject: [RFC PATCH 0/4 v2] Inotify limits per usernamespace
Date: Wed, 29 Jun 2016 16:37:01 +0300 [thread overview]
Message-ID: <1467207425-22072-1-git-send-email-kernel@kyup.com> (raw)
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
next reply other threads:[~2016-06-29 13:37 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-29 13:37 Nikolay Borisov [this message]
[not found] ` <1467207425-22072-1-git-send-email-kernel-6AxghH7DbtA@public.gmane.org>
2016-06-29 13:37 ` [PATCH 1/4] hashtable: Add __HASHTABLE_INITIALIZER Nikolay Borisov
2016-06-29 13:37 ` [PATCH 2/4] misc: Rename the HASH_SIZE macro Nikolay Borisov
2016-06-29 13:37 ` [PATCH 3/4] userns/inotify: Initial implementation of inotify per-userns Nikolay Borisov
[not found] ` <1467207425-22072-4-git-send-email-kernel-6AxghH7DbtA@public.gmane.org>
2016-07-06 17:29 ` Eric W. Biederman
[not found] ` <87mvluekun.fsf-JOvCrm2gF+uungPnsOpG7nhyD016LWXt@public.gmane.org>
2016-07-07 13:40 ` Nikolay Borisov
[not found] ` <577E5BC2.1000208-6AxghH7DbtA@public.gmane.org>
2016-07-07 15:27 ` Eric W. Biederman
[not found] ` <87inwh31v6.fsf-JOvCrm2gF+uungPnsOpG7nhyD016LWXt@public.gmane.org>
2016-07-08 11:43 ` Nikolay Borisov
[not found] ` <577F91C9.9060903-6AxghH7DbtA@public.gmane.org>
2016-07-08 15:08 ` Eric W. Biederman
2016-06-29 13:37 ` [PATCH 4/4] inotify: Convert to using new userns infrastructure Nikolay Borisov
2016-07-06 16:47 ` [RFC PATCH 0/4 v2] Inotify limits per usernamespace Eric W. Biederman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1467207425-22072-1-git-send-email-kernel@kyup.com \
--to=kernel-6axghh7dbta@public.gmane.org \
--cc=avagin-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org \
--cc=containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org \
--cc=gorcunov-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org \
--cc=jack-AlSwsSmVLrQ@public.gmane.org \
--cc=operations-/eCPMmvKun9pLGFMi4vTTA@public.gmane.org \
--cc=serge.hallyn-GeWIH/nMZzLQT0dZR+AlfA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.