From: Darren Hart <dvhart@linux.intel.com>
To: Zhai Edwin <edwin.zhai@intel.com>
Cc: poky@yoctoproject.org
Subject: Re: [PATCH 1/1] qemu: Use mesa's libGL rather than nVidia's to avoid segfault of qemu
Date: Thu, 17 Mar 2011 08:17:38 -0700 [thread overview]
Message-ID: <4D822612.2050604@linux.intel.com> (raw)
In-Reply-To: <f596757000465a4b8350e16f21553a23b8bbedfa.1300352186.git.edwin.zhai@intel.com>
On 03/17/2011 05:22 AM, Zhai Edwin wrote:
> From: Zhai Edwin<edwin.zhai@intel.com>
>
> Proprietary nVidia driver introduce its own libGL that precede mesa's.
> qemu has segfault if linked with it. This fix try to use mesa's libGL
> if ldd find qemu linked with nVidia libGL.
>
> [YOCTO #649]
> [YOCTO #698]
>
Looks like the right approach, my only concern is the wording of the
error messages. They are ambiguous with respect to what the script WILL
DO and what it is telling the user THEY SHOULD DO. Also, avoiding the
"you did this, bad user" sort of language wold be good.
Consider the following:
>
> Signed-off-by: Zhai Edwin<edwin.zhai@intel.com>
> ---
> scripts/poky-qemu-internal | 16 +++++++++++++++-
> 1 files changed, 15 insertions(+), 1 deletions(-)
>
> diff --git a/scripts/poky-qemu-internal b/scripts/poky-qemu-internal
> index 3638a65..1f09fe7 100755
> --- a/scripts/poky-qemu-internal
> +++ b/scripts/poky-qemu-internal
> @@ -436,10 +436,24 @@ else
> echo "Warning: distccd not present, no distcc support loaded."
> fi
>
> +# qemu got segfault if linked with nVidia's libgl
> +GL_LD_PRELOAD=$LD_PRELOAD
> +
> +if ldd $QEMUBIN | grep -i nvidia&> /dev/null
> +then
> + echo "************** !!!Warning!!! **************
> + You installed nVidia's libGL.so that probably lead qemu segfault!
> + Pls. uninstall proprietary nVidia driver or make mesa libgl precede nvidia's."
> +
> + # To avoid segfault of qemu, skip nVidia's libGL and use mesa's instead
> + echo "Skip nVidia's libGL!"
No need for two separate messages here, consider:
cat <<EOM
************** !!! 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.
Attempting to use mesa's libGL.so via GL_LD_PRELOAD."
EOM
--
Darren
> + GL_LD_PRELOAD="/usr/lib/libGL.so $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
> +LD_PRELOAD="$GL_LD_PRELOAD" $QEMUBIN -kernel $KERNEL $QEMUOPTIONS $SERIALOPTS -no-reboot $SCRIPT_QEMU_OPT $SCRIPT_QEMU_EXTRA_OPT --append "$KERNCMDLINE $SCRIPT_KERNEL_OPT" || /bin/true
>
> cleanup
>
--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel
prev parent reply other threads:[~2011-03-17 15:17 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-17 12:22 [PATCH 0/1] v2 fix qemu segfault with nVidia proprietary driver Zhai Edwin
2011-03-17 12:22 ` [PATCH 1/1] qemu: Use mesa's libGL rather than nVidia's to avoid segfault of qemu Zhai Edwin
2011-03-17 15:03 ` Mark Hatle
2011-03-18 0:41 ` Tian, Kevin
2011-03-18 2:42 ` Mark Hatle
2011-03-18 2:46 ` Tian, Kevin
2011-03-18 2:54 ` Zhai, Edwin
2011-03-17 15:17 ` Darren Hart [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D822612.2050604@linux.intel.com \
--to=dvhart@linux.intel.com \
--cc=edwin.zhai@intel.com \
--cc=poky@yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.