* [PATCH] Increase the default RLIMIT_MEMLOCK
@ 2008-04-27 19:26 Josselin Mouette
2008-05-02 0:50 ` Andrew Morton
0 siblings, 1 reply; 3+ messages in thread
From: Josselin Mouette @ 2008-04-27 19:26 UTC (permalink / raw)
To: linux-kernel; +Cc: akpm
[-- Attachment #1.1: Type: text/plain, Size: 814 bytes --]
Hi,
Currently, the default value for RLIMIT_MEMLOCK (defined in
include/linux/resource.h) is 32 KiB, because this value is enough for
GnuPG.
However this value is not enough for gnome-keyring-daemon, which will
store both SSH and GnuPG keys, plus user passwords for various kinds of
resources. Upstream authors recommend to provide a limit of at least 256
KiB for RLIMIT_MEMLOCK for the keys to remain securely in memory.
Given the amount of memory in current machines, I think 256 KiB is still
a very reasonable value. What do you think of increasing this default
value in the kernel?
Cheers,
--
.''`.
: :' : We are debian.org. Lower your prices, surrender your code.
`. `' We will add your hardware and software distinctiveness to
`- our own. Resistance is futile.
[-- Attachment #1.2: Type: text/x-patch, Size: 668 bytes --]
--- include/linux/resource.h.orig 2008-04-27 21:15:47.000000000 +0200
+++ include/linux/resource.h 2008-04-27 21:23:06.000000000 +0200
@@ -58,10 +58,11 @@
#define _STK_LIM (8*1024*1024)
/*
- * GPG wants 32kB of mlocked memory, to make sure pass phrases
- * and other sensitive information are never written to disk.
+ * The biggest widespread mlocked memory consumer is
+ * gnome-keyring-manager. It needs 256kB to make sure SSH/GPG
+ * passphrases and network passwords are never written to disk.
*/
-#define MLOCK_LIMIT (8 * PAGE_SIZE)
+#define MLOCK_LIMIT (64 * PAGE_SIZE)
/*
* Due to binary compatibility, the actual resource numbers
[-- Attachment #2: Ceci est une partie de message numériquement signée --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Increase the default RLIMIT_MEMLOCK
2008-04-27 19:26 [PATCH] Increase the default RLIMIT_MEMLOCK Josselin Mouette
@ 2008-05-02 0:50 ` Andrew Morton
2008-05-02 1:12 ` Chris Wright
0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2008-05-02 0:50 UTC (permalink / raw)
To: Josselin Mouette; +Cc: linux-kernel
On Sun, 27 Apr 2008 21:26:27 +0200
Josselin Mouette <joss@debian.org> wrote:
> Currently, the default value for RLIMIT_MEMLOCK (defined in
> include/linux/resource.h) is 32 KiB, because this value is enough for
> GnuPG.
>
> However this value is not enough for gnome-keyring-daemon, which will
> store both SSH and GnuPG keys, plus user passwords for various kinds of
> resources. Upstream authors recommend to provide a limit of at least 256
> KiB for RLIMIT_MEMLOCK for the keys to remain securely in memory.
>
> Given the amount of memory in current machines, I think 256 KiB is still
> a very reasonable value. What do you think of increasing this default
> value in the kernel?
>
> Cheers,
> --
> .''`.
> : :' : We are debian.org. Lower your prices, surrender your code.
> `. `' We will add your hardware and software distinctiveness to
> `- our own. Resistance is futile.
>
>
> [linux_mlock_256k.patch text/x-patch (668B)]
> --- include/linux/resource.h.orig 2008-04-27 21:15:47.000000000 +0200
> +++ include/linux/resource.h 2008-04-27 21:23:06.000000000 +0200
> @@ -58,10 +58,11 @@
> #define _STK_LIM (8*1024*1024)
>
> /*
> - * GPG wants 32kB of mlocked memory, to make sure pass phrases
> - * and other sensitive information are never written to disk.
> + * The biggest widespread mlocked memory consumer is
> + * gnome-keyring-manager. It needs 256kB to make sure SSH/GPG
> + * passphrases and network passwords are never written to disk.
> */
> -#define MLOCK_LIMIT (8 * PAGE_SIZE)
> +#define MLOCK_LIMIT (64 * PAGE_SIZE)
gee, it seems rather arbitrary. Perhaps we should have set it to zero on
day one to _force_ distributors to set an appropriate RLIMIT_MEMLOCK in
init.
We can do this of course, but does it actually help anything? Perhaps it's
actually a bad thing, permitting userspace developers to rely upon kernel
defaults rather than setting things they way they should be set?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Increase the default RLIMIT_MEMLOCK
2008-05-02 0:50 ` Andrew Morton
@ 2008-05-02 1:12 ` Chris Wright
0 siblings, 0 replies; 3+ messages in thread
From: Chris Wright @ 2008-05-02 1:12 UTC (permalink / raw)
To: Andrew Morton; +Cc: Josselin Mouette, linux-kernel
* Andrew Morton (akpm@linux-foundation.org) wrote:
> > --- include/linux/resource.h.orig 2008-04-27 21:15:47.000000000 +0200
> > +++ include/linux/resource.h 2008-04-27 21:23:06.000000000 +0200
> > @@ -58,10 +58,11 @@
> > #define _STK_LIM (8*1024*1024)
> >
> > /*
> > - * GPG wants 32kB of mlocked memory, to make sure pass phrases
> > - * and other sensitive information are never written to disk.
> > + * The biggest widespread mlocked memory consumer is
> > + * gnome-keyring-manager. It needs 256kB to make sure SSH/GPG
> > + * passphrases and network passwords are never written to disk.
> > */
> > -#define MLOCK_LIMIT (8 * PAGE_SIZE)
> > +#define MLOCK_LIMIT (64 * PAGE_SIZE)
>
> gee, it seems rather arbitrary. Perhaps we should have set it to zero on
> day one to _force_ distributors to set an appropriate RLIMIT_MEMLOCK in
> init.
Yes, it is fairly arbitrary. The motivation was gpg, but in fact when
the patchset started gpg had already changed from 1 page to 8 pages.
http://thread.gmane.org/gmane.linux.kernel/222613/focus=222681
> We can do this of course, but does it actually help anything? Perhaps it's
> actually a bad thing, permitting userspace developers to rely upon kernel
> defaults rather than setting things they way they should be set?
We don't want to keep changing at whim of random apps, agreed. Feels
like a distro issue, since kernel can't even know what apps might run,
and using 8 pages was just a courtesy hint to distros.
thanks,
-chris
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-05-02 1:13 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-27 19:26 [PATCH] Increase the default RLIMIT_MEMLOCK Josselin Mouette
2008-05-02 0:50 ` Andrew Morton
2008-05-02 1:12 ` Chris Wright
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox