aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/qemu
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2010-05-13 12:33:59 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2010-05-13 13:16:46 +0200
commit93a439a42b538be1f96c9250122504bfbdbd8d7b (patch)
tree46ea272fced023de5701c2c797c8d10cabcdb507 /recipes/qemu
parent9f68124263f3bd3bcef56886197b97fc99ad9d82 (diff)
downloadopenembedded-93a439a42b538be1f96c9250122504bfbdbd8d7b.tar.gz
qemu: add workarround to fallback to safe mmap_min_addr
* in case /proc/sys/vm/mmap_min_addr cannot be read because of security of host system Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'recipes/qemu')
-rw-r--r--recipes/qemu/qemu-0.12.3/fallback.to.safe.mmap_min_addr.patch37
-rw-r--r--recipes/qemu/qemu_0.12.3.bb3
2 files changed, 39 insertions, 1 deletions
diff --git a/recipes/qemu/qemu-0.12.3/fallback.to.safe.mmap_min_addr.patch b/recipes/qemu/qemu-0.12.3/fallback.to.safe.mmap_min_addr.patch
new file mode 100644
index 0000000000..fb1080f078
--- /dev/null
+++ b/recipes/qemu/qemu-0.12.3/fallback.to.safe.mmap_min_addr.patch
@@ -0,0 +1,37 @@
+From c313f89c33217ac0e471554dace2144718f86669 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Thu, 13 May 2010 12:23:40 +0200
+Subject: [PATCH] linux-user: use default mmap_min_addr 65536 when /proc/sys/vm/mmap_min_addr cannot be read
+
+* 65536 is default at least for ubuntu and fedora.
+---
+ linux-user/main.c | 5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/linux-user/main.c b/linux-user/main.c
+index 18b52c0..cf2cc59 100644
+--- a/linux-user/main.c
++++ b/linux-user/main.c
+@@ -2728,6 +2728,7 @@
+ * When user has explicitly set the quest base, we skip this
+ * test.
+ */
++#define MMAP_MIN_ADDR_DEFAULT 65536
+ if (!have_guest_base) {
+ FILE *fp;
+
+@@ -2736,8 +2737,14 @@
+ 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;
+ }
+ }
+ #endif /* CONFIG_USE_GUEST_BASE */
diff --git a/recipes/qemu/qemu_0.12.3.bb b/recipes/qemu/qemu_0.12.3.bb
index 1ce7c589fe..8bc67477ff 100644
--- a/recipes/qemu/qemu_0.12.3.bb
+++ b/recipes/qemu/qemu_0.12.3.bb
@@ -1,7 +1,7 @@
LICENSE = "GPL"
DEPENDS = "zlib"
-PR = "r2"
+PR = "r3"
SRC_URI = "\
http://download.savannah.gnu.org/releases/qemu/qemu-${PV}.tar.gz;name=qemu-${PV} \
@@ -20,6 +20,7 @@ SRC_URI = "\
file://fix_fortify_source_compilation.patch;patch=1 \
file://3f26c1227e3b08010f2a65379cecf4cb4b5933fa.patch;patch=1 \
file://c5883be23519921254c6940873ee8db04979c20a.patch;patch=1 \
+ file://fallback.to.safe.mmap_min_addr.patch;patch=1 \
"
SRC_URI[qemu-0.12.3.sha256sum] = "3ce26f8fb0a59418b2064a26bac4b40ea4e493acbc3df7ad5932635477fade4b"