[poky] [PATCH 1/2] qemu: warn user if nVidia libGL is detected (leads to qemu segfault)
Darren Hart
dvhart at linux.intel.com
Fri Mar 18 10:32:58 PDT 2011
From: Darren Hart <dvhart at linux.intel.com>
nVidia's OpenGL libraries are known to have compatibility issues with qemu,
resulting in a segfault. As different workarounds are required for the different
distributions, just warn the user to explain the qemu segfault to follow, and
suggest a workaround using LD_PRELOAD.
[YOCTO #649]
[YOCTO #698]
(Original patch from Edwin, Darren modified warning and git commit wording)
Signed-off-by: Darren Hart <dvhart at linux.intel.com>
CC: Mark Hatle <mark.hatle at windriver.com>
CC: Zhai Edwin <edwin.zhai at intel.com>
---
scripts/poky-qemu-internal | 14 +++++++++++++-
1 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/scripts/poky-qemu-internal b/scripts/poky-qemu-internal
index 046e2b6..0f0f799 100755
--- a/scripts/poky-qemu-internal
+++ b/scripts/poky-qemu-internal
@@ -442,10 +442,22 @@ else
echo "Warning: distccd not present, no distcc support loaded."
fi
+# qemu got segfault if linked with nVidia's libgl
+if ldd $QEMUBIN | grep -i nvidia &> /dev/null
+then
+ echo "************** !!!Warning!!! **************
+ nVidia's proprietary OpenGL libraries are known to have compatibility
+ issues with qemu, resulting in a segfault. Please uninstall these
+ drivers or ensure the mesa libGL libraries precede nvidia's via LD_PRELOAD.
+ "
+fi
+
echo "Running $QEMU..."
# -no-reboot is a mandatory option - see bug #100
echo $QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append '"'$KERNCMDLINE $SCRIPT_KERNEL_OPT'"'
-$QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append "$KERNCMDLINE $SCRIPT_KERNEL_OPT" || /bin/true
+# If QEMU crashes, we need to run stty sane
+$QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append "$KERNCMDLINE $SCRIPT_KERNEL_OPT" || stty sane
+
cleanup
--
1.7.1
More information about the poky
mailing list