]> code.ossystems Code Review - openembedded-core.git/commitdiff
sanity.bbclass: handle lack of permission to read /proc/sys/vm/mmap_min_addr
authorJoshua Lock <josh@linux.intel.com>
Fri, 16 Apr 2010 15:41:33 +0000 (16:41 +0100)
committerJoshua Lock <josh@linux.intel.com>
Tue, 27 Apr 2010 15:58:42 +0000 (16:58 +0100)
Patch from OE.dev by Martin Jansa to workaround that we on modern Linux we can
no longer read this file.

We need a better fix but best option will be to update to a newer, relocatable,
QEMU release.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
meta/classes/sanity.bbclass

index c2f57a38371f829311e91d99078ff00d199f8a01..67a5f52de3c61705cb06af999fae1f5f47611fd7 100644 (file)
@@ -95,11 +95,15 @@ def check_sanity(e):
                        messages = messages + "qemu-native was in ASSUME_PROVIDED but the QEMU binaries (qemu-arm) can't be found in PATH"
 
        if data.getVar('TARGET_ARCH', e.data, True) == "arm":
-               if os.path.exists("/proc/sys/vm/mmap_min_addr"):
-                       f = file("/proc/sys/vm/mmap_min_addr", "r")
-                       if (f.read().strip() != "0"):
-                               messages = messages + "/proc/sys/vm/mmap_min_addr is not 0. This will cause problems with qemu so please fix the value (as root).\n\nTo fix this in later reboots, set vm.mmap_min_addr = 0 in /etc/sysctl.conf.\n"
-                       f.close()
+                # This path is no longer user-readable in modern (very recent) Linux
+                try:
+                        if os.path.exists("/proc/sys/vm/mmap_min_addr"):
+                                f = file("/proc/sys/vm/mmap_min_addr", "r")
+                                if (f.read().strip() != "0"):
+                                        messages = messages + "/proc/sys/vm/mmap_min_addr is not 0. This will cause problems with qemu so please fix the value (as root).\n\nTo fix this in later reboots, set vm.mmap_min_addr = 0 in /etc/sysctl.conf.\n"
+                                f.close()
+                except:
+                        pass
 
        for util in required_utilities.split():
                if not check_app_exists( util, e.data ):