linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Increase limit of max_user_watches from 1/25 to 1/16
@ 2021-01-20 13:02 Eric Curtin
  2021-01-20 13:39 ` Eric Curtin
  0 siblings, 1 reply; 2+ messages in thread
From: Eric Curtin @ 2021-01-20 13:02 UTC (permalink / raw)
  Cc: ericcurtin17, Jonathan Corbet, Alexander Viro,
	Alexander A. Klimov, open list:DOCUMENTATION, open list,
	open list:FILESYSTEMS (VFS and infrastructure)

The current default value for  max_user_watches  is the 1/16 (6.25%) of
the available low memory, divided for the "watch" cost in bytes.

Tools like inotify-tools and visual studio code, seem to hit these
limits a little to easy.

Also amending the documentation, it referred to an old value for this.

Signed-off-by: Eric Curtin <ericcurtin17@gmail.com>
---
 Documentation/admin-guide/sysctl/fs.rst | 4 ++--
 fs/eventpoll.c                          | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/Documentation/admin-guide/sysctl/fs.rst b/Documentation/admin-guide/sysctl/fs.rst
index f48277a0a850..f7fe45e69c41 100644
--- a/Documentation/admin-guide/sysctl/fs.rst
+++ b/Documentation/admin-guide/sysctl/fs.rst
@@ -380,5 +380,5 @@ This configuration option sets the maximum number of "watches" that are
 allowed for each user.
 Each "watch" costs roughly 90 bytes on a 32bit kernel, and roughly 160 bytes
 on a 64bit one.
-The current default value for  max_user_watches  is the 1/32 of the available
-low memory, divided for the "watch" cost in bytes.
+The current default value for  max_user_watches  is the 1/16 (6.25%) of the
+available low memory, divided for the "watch" cost in bytes.
diff --git a/fs/eventpoll.c b/fs/eventpoll.c
index a829af074eb5..de9ef8f6d0b2 100644
--- a/fs/eventpoll.c
+++ b/fs/eventpoll.c
@@ -2352,9 +2352,9 @@ static int __init eventpoll_init(void)
 
 	si_meminfo(&si);
 	/*
-	 * Allows top 4% of lomem to be allocated for epoll watches (per user).
+	 * Allows top 6.25% of lomem to be allocated for epoll watches (per user).
 	 */
-	max_user_watches = (((si.totalram - si.totalhigh) / 25) << PAGE_SHIFT) /
+	max_user_watches = (((si.totalram - si.totalhigh) / 16) << PAGE_SHIFT) /
 		EP_ITEM_COST;
 	BUG_ON(max_user_watches < 0);
 
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] Increase limit of max_user_watches from 1/25 to 1/16
  2021-01-20 13:02 [PATCH] Increase limit of max_user_watches from 1/25 to 1/16 Eric Curtin
@ 2021-01-20 13:39 ` Eric Curtin
  0 siblings, 0 replies; 2+ messages in thread
From: Eric Curtin @ 2021-01-20 13:39 UTC (permalink / raw)
  Cc: Jonathan Corbet, Alexander Viro, Alexander A. Klimov,
	open list:DOCUMENTATION, open list,
	open list:FILESYSTEMS (VFS and infrastructure)

On Wed, 20 Jan 2021 at 13:02, Eric Curtin <ericcurtin17@gmail.com> wrote:
>
> The current default value for  max_user_watches  is the 1/16 (6.25%) of
> the available low memory, divided for the "watch" cost in bytes.
>
> Tools like inotify-tools and visual studio code, seem to hit these
> limits a little to easy.
>
> Also amending the documentation, it referred to an old value for this.
>
> Signed-off-by: Eric Curtin <ericcurtin17@gmail.com>
> ---
>  Documentation/admin-guide/sysctl/fs.rst | 4 ++--
>  fs/eventpoll.c                          | 4 ++--
>  2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/Documentation/admin-guide/sysctl/fs.rst b/Documentation/admin-guide/sysctl/fs.rst
> index f48277a0a850..f7fe45e69c41 100644
> --- a/Documentation/admin-guide/sysctl/fs.rst
> +++ b/Documentation/admin-guide/sysctl/fs.rst
> @@ -380,5 +380,5 @@ This configuration option sets the maximum number of "watches" that are
>  allowed for each user.
>  Each "watch" costs roughly 90 bytes on a 32bit kernel, and roughly 160 bytes
>  on a 64bit one.
> -The current default value for  max_user_watches  is the 1/32 of the available
> -low memory, divided for the "watch" cost in bytes.
> +The current default value for  max_user_watches  is the 1/16 (6.25%) of the
> +available low memory, divided for the "watch" cost in bytes.
> diff --git a/fs/eventpoll.c b/fs/eventpoll.c
> index a829af074eb5..de9ef8f6d0b2 100644
> --- a/fs/eventpoll.c
> +++ b/fs/eventpoll.c
> @@ -2352,9 +2352,9 @@ static int __init eventpoll_init(void)
>
>         si_meminfo(&si);
>         /*
> -        * Allows top 4% of lomem to be allocated for epoll watches (per user).
> +        * Allows top 6.25% of lomem to be allocated for epoll watches (per user).
>          */
> -       max_user_watches = (((si.totalram - si.totalhigh) / 25) << PAGE_SHIFT) /
> +       max_user_watches = (((si.totalram - si.totalhigh) / 16) << PAGE_SHIFT) /
>                 EP_ITEM_COST;
>         BUG_ON(max_user_watches < 0);
>
> --
> 2.25.1
>

Please ignore this, this is the wrong limit (an epoll one), I sent
another patch just
to update the documentation to be correct. Weiman Long already kindly solved the
issue in 92890123749bafc317bbfacbe0a62ce08d78efb7

Separate patch is titled "[PATCH] Update
Documentation/admin-guide/sysctl/fs.rst"

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-01-20 17:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-20 13:02 [PATCH] Increase limit of max_user_watches from 1/25 to 1/16 Eric Curtin
2021-01-20 13:39 ` Eric Curtin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).