diff mbox series

pciutils: work around pseudo symlink creation race

Message ID 20250319142310.4045570-1-ross.burton@arm.com
State New
Headers show
Series pciutils: work around pseudo symlink creation race | expand

Commit Message

Ross Burton March 19, 2025, 2:23 p.m. UTC
Richard managed to reproduce a pseudo bug that pciutils in a minimal
test case[1] which confirmed that it was the symlink creation causing
issues.

The pciutils Makefile has several installation targets:
- install: binaries, manpages, shared library
- install-lib: headers, library symlinks, shared library

We need to run both targets to install the full set of files we want to
be installed, but notably they both create the .so symlink and as they're
running in parallel this is what triggers the bug in pseudo.

Until the bug has been resolved (or the Makefiles don't duplicate rules),
just run the two targets separately.

[ YOCTO #14957 ]

[1] https://lore.kernel.org/openembedded-core/20250319133457.806384-1-richard.purdie@linuxfoundation.org/T/#u

Signed-off-by: Ross Burton <ross.burton@arm.com>
---
 meta/recipes-bsp/pciutils/pciutils_3.13.0.bb | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb b/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb
index 74edd8686b0..6478722838f 100644
--- a/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb
+++ b/meta/recipes-bsp/pciutils/pciutils_3.13.0.bb
@@ -32,7 +32,10 @@  EXTRA_OEMAKE += "CC="${CC} ${CFLAGS}" AR="${AR}" STRIP= LDFLAGS="${LDFLAGS}""
 EXTRA_OEMAKE += "PREFIX=${prefix} LIBDIR=${libdir} SBINDIR=${sbindir} SHAREDIR=${datadir} MANDIR=${mandir}"
 
 do_install () {
-	oe_runmake DESTDIR=${D} install install-lib
+	# Do these in separate calls as they expose a race in pseudo when creating
+	# symlinks when ran in parallel.
+	oe_runmake DESTDIR=${D} install
+	oe_runmake DESTDIR=${D} install-lib
 
 	install -d ${D}${bindir}