register arm binfmt in every time
authorGui Chen <gui.chen@intel.com>
Sun, 13 Jan 2013 08:45:19 +0000 (16:45 +0800)
committerGui Chen <gui.chen@intel.com>
Mon, 21 Jan 2013 17:38:02 +0000 (01:38 +0800)
in bootstrap, there is only 'qemu-arm-static', so should unregister arm binfmt,
and register it for arm image in every time to avoid conflict register

Signed-off-by: Gui Chen <gui.chen@intel.com>
mic/utils/misc.py

index ead3fe0..46d1aae 100644 (file)
@@ -955,19 +955,17 @@ def setup_qemu_emulator(rootdir, arch):
 
     if not os.path.exists(rootdir + "/usr/bin"):
         makedirs(rootdir + "/usr/bin")
-    shutil.copy(qemu_emulator, rootdir + qemu_emulator)
+    shutil.copy(qemu_emulator, rootdir + "/usr/bin/qemu-arm-static")
+    qemu_emulator = "/usr/bin/qemu-arm-static"
 
     # disable selinux, selinux will block qemu emulator to run
     if os.path.exists("/usr/sbin/setenforce"):
         msger.info('Try to disable selinux')
         runner.show(["/usr/sbin/setenforce", "0"])
 
-    node = "/proc/sys/fs/binfmt_misc/arm"
-    if is_statically_linked(qemu_emulator) and os.path.exists(node):
-        return qemu_emulator
-
     # unregister it if it has been registered and is a dynamically-linked executable
-    if not is_statically_linked(qemu_emulator) and os.path.exists(node):
+    node = "/proc/sys/fs/binfmt_misc/arm"
+    if os.path.exists(node):
         qemu_unregister_string = "-1\n"
         fd = open("/proc/sys/fs/binfmt_misc/arm", "w")
         fd.write(qemu_unregister_string)