Re: [PATCH] ipc,shm: increase default size for shmmax

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 30 Mar 2014 20:06:39 -0700 Davidlohr Bueso <davidlohr@xxxxxx> wrote:

> From: Davidlohr Bueso <davidlohr@xxxxxx>
> 
> The default size is, and always has been, 32Mb. Today, in the
> XXI century, it seems that this value is rather small, making
> users have to increase it via sysctl, which can cause unnecessary
> work and userspace application workarounds[1]. I have arbitrarily
> chosen a 4x increase, leaving it at 128Mb, and naturally, the
> same goes for shmall. While it may make more sense to set the value
> based on the system memory, this limit must be the same across all
> systems, and left to users to change if needed.
> 
> ...
>
> --- a/include/uapi/linux/shm.h
> +++ b/include/uapi/linux/shm.h
> @@ -12,7 +12,7 @@
>   * be increased by sysctl
>   */
>  
> -#define SHMMAX 0x2000000		 /* max shared seg size (bytes) */
> +#define SHMMAX 0x8000000		 /* max shared seg size (bytes) */
>  #define SHMMIN 1			 /* min shared seg size (bytes) */
>  #define SHMMNI 4096			 /* max num of segs system wide */
>  #ifndef __KERNEL__

urgh.  Perhaps we should have made the default "zero bytes" to force
everyone to think about what they really need and to configure their
systems.  Of course that just means that distros will poke some random
number in there at init time.

- With this change, the limit is no longer "the same across all
  systems" because the patch increases it for more recent kernels.

  Why do you say it "must be the same" and why is this not a problem
  in the develop-on-new-kernel, run-on-old-kernel scenario?

- The sysctl became somewhat pointless when we added ipc namespaces. 
  shm_init_ns() ignores the sysctl and goes straight to SHMMAX, and
  altering the sysctl will have no effect upon existing namespaces
  anyway.

- Shouldn't there be a way to alter this namespace's shm_ctlmax?

- What happens if we just nuke the limit altogether and fall back to
  the next check, which presumably is the rlimit bounds?

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]