public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: Tim Gardner <tim.gardner@canonical.com>
Cc: linux-kernel@vger.kernel.org, Dan Kegel <dank@kegel.com>
Subject: Re: [PATCH] Raise default hard ulimit on number of files to 4096
Date: Thu, 31 Mar 2011 14:35:12 -0700	[thread overview]
Message-ID: <20110331143512.2bd5703b.akpm@linux-foundation.org> (raw)
In-Reply-To: <1301606810-11001-1-git-send-email-tim.gardner@canonical.com>

On Thu, 31 Mar 2011 15:26:50 -0600
Tim Gardner <tim.gardner@canonical.com> wrote:

> Apps are increasingly using more than 1024 file descriptors.
> See discussion in several distro bug trackers, e.g.
> https://bugs.launchpad.net/bugs/663090
> https://issues.rpath.com/browse/RPL-2054
> 

^^ how not to write a changelog.

Here's the useful part, from Dan's bugzilla report:

: You don't want to raise the default soft limit, since that might break
: apps that use select(), but it's safe to raise the default hard limit;
: that way, apps that know they need lots of file descriptors can raise their
: soft limit without needing root, and without user intervention.
: 
: Ubuntu is doing this for 11.04 by changing include/asm-generic/resource.h:
: 
: -    [RLIMIT_NOFILE]        = {       INR_OPEN,       INR_OPEN },    \
: +    [RLIMIT_NOFILE]        = {       INR_OPEN,     INR_OPEN*4 },    \
: 
: They chose to do this with a kernel change because they have a policy
: of not changing kernel defaults in userland.
: 
: While 4096 might not be enough for *all* apps, it seems to be plenty
: for the apps I've seen lately that are unhappy with 1024.


> ---
>  include/asm-generic/resource.h |    2 +-
>  include/linux/fs.h             |    3 ++-
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/include/asm-generic/resource.h b/include/asm-generic/resource.h
> index 587566f..61fa862 100644
> --- a/include/asm-generic/resource.h
> +++ b/include/asm-generic/resource.h
> @@ -78,7 +78,7 @@
>  	[RLIMIT_CORE]		= {              0,  RLIM_INFINITY },	\
>  	[RLIMIT_RSS]		= {  RLIM_INFINITY,  RLIM_INFINITY },	\
>  	[RLIMIT_NPROC]		= {              0,              0 },	\
> -	[RLIMIT_NOFILE]		= {       INR_OPEN,       INR_OPEN },	\
> +	[RLIMIT_NOFILE]		= {   INR_OPEN_CUR,   INR_OPEN_MAX },	\
>  	[RLIMIT_MEMLOCK]	= {    MLOCK_LIMIT,    MLOCK_LIMIT },	\
>  	[RLIMIT_AS]		= {  RLIM_INFINITY,  RLIM_INFINITY },	\
>  	[RLIMIT_LOCKS]		= {  RLIM_INFINITY,  RLIM_INFINITY },	\
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index 52f283c..6e1e4e6 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -23,7 +23,8 @@
>  
>  /* Fixed constants first: */
>  #undef NR_OPEN
> -#define INR_OPEN 1024		/* Initial setting for nfile rlimits */
> +#define INR_OPEN_CUR 1024	/* Initial setting for nfile rlimits */
> +#define INR_OPEN_MAX 4096	/* Hard limit for nfile rlimits */
>  
>  #define BLOCK_SIZE_BITS 10
>  #define BLOCK_SIZE (1<<BLOCK_SIZE_BITS)
> -- 
> 1.7.0.4

  reply	other threads:[~2011-03-31 21:35 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-31 21:26 [PATCH] Raise default hard ulimit on number of files to 4096 Tim Gardner
2011-03-31 21:35 ` Andrew Morton [this message]
2011-04-01  1:30   ` [PATCH V2] " Tim Gardner
2011-04-01  4:13     ` Dan Kegel

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=20110331143512.2bd5703b.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=dank@kegel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tim.gardner@canonical.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox