summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKurt Garloff <garloff@suse.de>2008-10-29 14:00:48 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-30 11:38:45 -0700
commit0833422274ff00729a603b020fac297e69a03e40 (patch)
tree5b2f28bc0854a9e3a43eef424a761a2235f756bb
parente946217e4fdaa67681bbabfa8e6b18641921f750 (diff)
mm: increase the default mlock limit from 32k to 64k
By default, non-privileged tasks can only mlock() a small amount of memory to avoid a DoS attack by ordinary users. The Linux kernel defaulted to 32k (on a 4k page size system) to accommodate the needs of gpg. However, newer gpg2 needs 64k in various circumstances and otherwise fails miserably, see bnc#329675. Change the default to 64k, and make it more agnostic to PAGE_SIZE. Signed-off-by: Kurt Garloff <garloff@suse.de> Signed-off-by: Nick Piggin <npiggin@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--include/linux/resource.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/resource.h b/include/linux/resource.h
index aaa423a6f3d..40fc7e62608 100644
--- a/include/linux/resource.h
+++ b/include/linux/resource.h
@@ -59,10 +59,10 @@ struct rlimit {
#define _STK_LIM (8*1024*1024)
/*
- * GPG wants 32kB of mlocked memory, to make sure pass phrases
+ * GPG2 wants 64kB of mlocked memory, to make sure pass phrases
* and other sensitive information are never written to disk.
*/
-#define MLOCK_LIMIT (8 * PAGE_SIZE)
+#define MLOCK_LIMIT ((PAGE_SIZE > 64*1024) ? PAGE_SIZE : 64*1024)
/*
* Due to binary compatibility, the actual resource numbers