diff options
| -rw-r--r-- | recipes-devtools/qemu/qemu-qoriq.inc | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/recipes-devtools/qemu/qemu-qoriq.inc b/recipes-devtools/qemu/qemu-qoriq.inc index 55a8bc682..b626feae5 100644 --- a/recipes-devtools/qemu/qemu-qoriq.inc +++ b/recipes-devtools/qemu/qemu-qoriq.inc | |||
| @@ -22,11 +22,6 @@ COMPATIBLE_HOST:mipsarchn64 = "null" | |||
| 22 | # upstream states qemu doesn't work without optimization | 22 | # upstream states qemu doesn't work without optimization |
| 23 | DEBUG_BUILD = "0" | 23 | DEBUG_BUILD = "0" |
| 24 | 24 | ||
| 25 | do_install:append() { | ||
| 26 | # Prevent QA warnings about installed ${localstatedir}/run | ||
| 27 | if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi | ||
| 28 | } | ||
| 29 | |||
| 30 | do_compile_ptest() { | 25 | do_compile_ptest() { |
| 31 | make buildtest-TESTS | 26 | make buildtest-TESTS |
| 32 | } | 27 | } |
| @@ -130,19 +125,21 @@ do_install () { | |||
| 130 | oe_runmake 'DESTDIR=${D}' install | 125 | oe_runmake 'DESTDIR=${D}' install |
| 131 | } | 126 | } |
| 132 | 127 | ||
| 133 | # The following fragment will create a wrapper for qemu-mips user emulation | ||
| 134 | # binary in order to work around a segmentation fault issue. Basically, by | ||
| 135 | # default, the reserved virtual address space for 32-on-64 bit is set to 4GB. | ||
| 136 | # This will trigger a MMU access fault in the virtual CPU. With this change, | ||
| 137 | # the qemu-mips works fine. | ||
| 138 | # IMPORTANT: This piece needs to be removed once the root cause is fixed! | ||
| 139 | do_install:append() { | 128 | do_install:append() { |
| 129 | # Prevent QA warnings about installed ${localstatedir}/run | ||
| 130 | if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi | ||
| 131 | |||
| 132 | # Create a wrapper for qemu-mips user emulation binary in order to work | ||
| 133 | # around a segmentation fault issue. Basically, by default, the reserved | ||
| 134 | # virtual address space for 32-on-64 bit is set to 4GB. This will trigger a | ||
| 135 | # MMU access fault in the virtual CPU. With this change, the qemu-mips works | ||
| 136 | # fine. | ||
| 137 | # IMPORTANT: This piece needs to be removed once the root cause is fixed! | ||
| 140 | if [ -e "${D}/${bindir}/qemu-mips" ]; then | 138 | if [ -e "${D}/${bindir}/qemu-mips" ]; then |
| 141 | create_wrapper ${D}/${bindir}/qemu-mips \ | 139 | create_wrapper ${D}/${bindir}/qemu-mips \ |
| 142 | QEMU_RESERVED_VA=0x0 | 140 | QEMU_RESERVED_VA=0x0 |
| 143 | fi | 141 | fi |
| 144 | } | 142 | } |
| 145 | # END of qemu-mips workaround | ||
| 146 | 143 | ||
| 147 | # QEMU ships firmware and BIOS blobs built for guest architectures other than | 144 | # QEMU ships firmware and BIOS blobs built for guest architectures other than |
| 148 | # the build target, so the arch QA check flags them by design. | 145 | # the build target, so the arch QA check flags them by design. |
