lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Date:	Fri, 12 Jun 2009 16:00:29 +0900
From:	KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
To:	"linux-mm@...ck.org" <linux-mm@...ck.org>
Cc:	"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: [RFC][PATCH] reduce default MAX_MAP_COUNT to be safe value

I posted a question about this to gdb people but get no answers ;)
Then, start from what I can do, now.

Opinions ?

Thanks,
-Kame
==
From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>

With ELF, at generating coredump, some more headers other than used vmas
are added.
When, maxp_map_count == 65536, a core generated by following kinds of
code can be unreadable because the number of ELF's program header is
written in 16bit in Ehdr (please see elf.h) and the number overflows.
==
	... = mmap(); (munmap, mprotect, etc...)
	if (failed)
		abort();
==
This can be happen in mmap/munmap/mprotect/etc...which calls
split_vma().

I think 65536 is not safe as _default_ because core-dump can be
corrupted when we need to look into coredump.
This reduce it to 65500 for avoiding unexpected corrupted core.
(I confirmed 65530 can work well with my tiny program.)

Anyway, max_map_count can be enlarged by sysctl if a user is brave..

Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
---
 include/linux/sched.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6.30.org/include/linux/sched.h
===================================================================
--- linux-2.6.30.org.orig/include/linux/sched.h
+++ linux-2.6.30.org/include/linux/sched.h
@@ -350,7 +350,7 @@ struct nsproxy;
 struct user_namespace;
 
 /* Maximum number of active map areas.. This is a random (large) number */
-#define DEFAULT_MAX_MAP_COUNT	65536
+#define DEFAULT_MAX_MAP_COUNT	65500
 
 extern int sysctl_max_map_count;
 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ