]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commit
qemu-helper-native: Re-write bridge helper as C program
authorJoshua Watt <JPEWhacker@gmail.com>
Fri, 21 Oct 2022 18:14:51 +0000 (13:14 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 26 Oct 2022 11:26:17 +0000 (12:26 +0100)
commitf698e98f2f09952b34488b8cf9e73e82bd7aea07
treefcd5eadf22dde81d60d249aeca4c11d50921edde
parent99719a3712a88dce8450994d995803e126e49115
qemu-helper-native: Re-write bridge helper as C program

The bridge helper program is invoked directly from QEMU when it needs to
attach to a network bridge. As such, it is subject to the environment of
QEMU itself. Specifically, if bridging is enabled with direct rendering
acceleration, QEMU is run with an LD_PRELOAD that attempts to preload
several uninative libraries; however /bin/sh doesn't use the uninative
loader which means it can fail to start with an error like:

 /bin/sh: symbol lookup error: sysroots-uninative/x86_64-linux/lib/librt.so.1: undefined symbol: __libc_unwind_link_get, version GLIBC_PRIVATE

Converting the helper program to a C program resolves this problem
because it will now use the uninative loader so the preload doesn't
cause errors.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb
meta/recipes-devtools/qemu/qemu-helper/qemu-oe-bridge-helper [deleted file]
meta/recipes-devtools/qemu/qemu-helper/qemu-oe-bridge-helper.c [new file with mode: 0644]