mirror of
https://git.busybox.net/buildroot.git
synced 2024-12-05 03:13:41 +08:00
82afcacb62
As reported by Thierry Bultel [1], dracut doesn't work since the version bump to version 059. Further investigation by Andreas Naumann [2] reported that the issue come from this commit d010fa0 refactor(dracut-install): fork() instead of popen(), sanitise line reading [3]. The issue come from our dracut_wrapper and how DRACUT_LDD is defined. Indeed dracut expect DRACUT_LDD=ldd or a single binary (without arguments) but we are using "prelink-rtld --root='${sysroot}'". With the change introduced by [3], our DRACUT_LDD is used directly by execlp() leading to an error: execlp(ldd, ldd, fullsrcpath, (char *)NULL); Use mktemp to generate a temporary dracut-ldd script using prelink-rtld --root='${sysroot}' ${1} execute dracut.real in a subshell to cleanup the temporary file at the end of the dracut wrapper script. Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/6224243423 [tests.fs.test_cpio.TestCpioDracutGlibcMergedUsr] https://gitlab.com/buildroot.org/buildroot/-/jobs/6224243434 [tests.fs.test_cpio.TestCpioDracutMuslMergedUsr] https://gitlab.com/buildroot.org/buildroot/-/jobs/6224243567 [tests.fs.test_cpio.TestCpioDracutUclibcMergedUsr] https://gitlab.com/buildroot.org/buildroot/-/jobs/6224243559 [tests.fs.test_cpio.TestCpioDracutGlibc] https://gitlab.com/buildroot.org/buildroot/-/jobs/6224243504 [tests.fs.test_cpio.TestCpioDracutUclibc] https://gitlab.com/buildroot.org/buildroot/-/jobs/6224243498 [tests.fs.test_cpio.TestCpioDracutMusl] [1] http://lists.busybox.net/pipermail/buildroot/2024-February/684145.html [2] http://lists.busybox.net/pipermail/buildroot/2024-February/684503.html [3] |
||
---|---|---|
.. | ||
0001-dracut.sh-don-t-unset-LD_PRELOAD.patch | ||
busybox-init-module-setup.sh | ||
Config.in.host | ||
dracut_wrapper | ||
dracut.hash | ||
dracut.mk | ||
libc-links-module-setup.sh | ||
merged-usr-module-setup.sh |