[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] linux-user: use default mmap_min_addr 65536 when /p
From: |
Martin Jansa |
Subject: |
[Qemu-devel] [PATCH] linux-user: use default mmap_min_addr 65536 when /proc/sys/vm/mmap_min_addr cannot be read |
Date: |
Thu, 13 May 2010 15:17:25 +0200 |
* 65536 is default at least for ubuntu and fedora.
* after
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0e1a6ef2dea88101b056b6d9984f3325c5efced3
it's not readable by normal user on many systems
* there is patch to enable read-only access again
http://git.kernel.org/?p=linux/kernel/git/jmorris/security-testing-2.6.git;a=commitdiff;h=822cceec7248013821d655545ea45d1c6a9d15b3
but that's not applied in many distributions
* please consider this workaround
Signed-off-by: Martin Jansa <address@hidden>
---
linux-user/main.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/linux-user/main.c b/linux-user/main.c
index 18b52c0..94b6465 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -2891,6 +2891,7 @@ int main(int argc, char **argv, char **envp)
* When loading the ELF image to determine whether guest_base
* is needed. It is also used in mmap_find_vma.
*/
+#define MMAP_MIN_ADDR_DEFAULT 65536
{
FILE *fp;
@@ -2899,8 +2900,14 @@ int main(int argc, char **argv, char **envp)
if (fscanf(fp, "%lu", &tmp) == 1) {
mmap_min_addr = tmp;
qemu_log("host mmap_min_addr=0x%lx\n", mmap_min_addr);
+ } else {
+ qemu_log("cannot read value from /proc/sys/vm/mmap_min_addr,
assuming %d\n", MMAP_MIN_ADDR_DEFAULT);
+ mmap_min_addr = MMAP_MIN_ADDR_DEFAULT;
}
fclose(fp);
+ } else {
+ qemu_log("cannot open /proc/sys/vm/mmap_min_addr for reading,
assuming %d\n", MMAP_MIN_ADDR_DEFAULT);
+ mmap_min_addr = MMAP_MIN_ADDR_DEFAULT;
}
}
--
1.7.1
- [Qemu-devel] [PATCH] linux-user: use default mmap_min_addr 65536 when /proc/sys/vm/mmap_min_addr cannot be read,
Martin Jansa <=