Bug 14957

Summary: AB-INT: inode mismatch in oeqa.buildperf.test_basic.Test1P3 (pseudo issue)
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Alexandre Belloni <alexandre.belloni>
Component: coreAssignee: Unassigned <unassigned>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Medium+ CC: alexandre.belloni, mathieu.dubois-briand, meta.mr.watcher, meta.watcher, paul, randy.macleod, richard.purdie, ross.burton, yoann.congal
Version: unspecified   
Target Milestone: 6.1 M2   
Hardware: x86   
OS: Multiple   
Whiteboard: AB-INT AB-HAVE-PLAN
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Alexandre Belloni 2022-11-03 10:47:17 UTC
https://autobuilder.yoctoproject.org/typhoon/#/builders/133/builds/805/steps/12/logs/stdio

======================================================================
ERROR: test13 (oeqa.buildperf.test_basic.Test1P3)
Build core-image-sato with rm_work enabled
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/pokybuild/yocto-worker/buildperf-alma8/build/meta/lib/oeqa/buildperf/test_basic.py", line 58, in test13
    save_bs=True)
  File "/home/pokybuild/yocto-worker/buildperf-alma8/build/meta/lib/oeqa/buildperf/base.py", line 346, in measure_cmd_resources
    raise data
oeqa.utils.CommandError: Command '['bitbake', '-R', '/home/pokybuild/build-perf-test/results-5200799866-20221007030024/test13.tmp/postfile.conf', 'core-image-sato']' returned non-zero exit status 1 with output: 
... (last 40 lines of output)
inode mismatch: '/home/pokybuild/build-perf-test/build-5200799866-20221007030024/tmp/work/core2-32-poky-linux/pciutils/3.8.0-r0/image/usr/lib/libpci.so.3' ino 26215279 in db, 26215277 in request.
Setup complete, sending SIGUSR1 to pid 3749733.
Comment 1 Randy MacLeod 2022-11-03 14:46:45 UTC
Something has touched libpci.so.3 outside of the pseudo context.
Check the pciutils do_install recipes to see if it's doing anything interesting.
Comment 3 Richard Purdie 2022-11-20 11:35:35 UTC
I looked into this one and it is a bug in the recipe and/or the pciutils makefile.

There are two different make targets for the symlink. From the kernel's perspective, they're atomic and one will win but pseudo can't know which would and hence it's database can be out of sync.
Comment 4 Randy MacLeod 2022-12-09 21:38:28 UTC
Unfortunately, Sakib is busy for the next 2 weeks and then on holiday so moving to unassigned.
Comment 5 Randy MacLeod 2023-03-30 15:14:02 UTC
Indicative of a pseudo race condition that we should debug.
Comment 6 Randy MacLeod 2023-10-30 15:37:27 UTC
Build move to 5.0 -- ../Randy
Comment 7 Randy MacLeod 2024-04-24 20:30:26 UTC
Bulk move from 5.0* to 5.99 to indicate that there isn't any one available to work on this issue.
Comment 9 Tim Orling 2024-10-10 15:14:08 UTC
*** Bug 15609 has been marked as a duplicate of this bug. ***
Comment 10 Randy MacLeod 2025-01-23 15:56:19 UTC
Assumed to be fixed by improvements in pseudo (link handling?) but reopen if seen again.
Comment 11 Mathieu Dubois-Briand 2025-03-18 09:53:04 UTC
buildperf-alma8 perf-alma8-vk master completed at 2025-03-15T04:48:39Z
https://autobuilder.yoctoproject.org/valkyrie/#/builders/57/builds/783/steps/12/logs/stdio
Comment 12 Richard Purdie 2025-03-18 22:56:33 UTC
Wha we need to do here is create a test case where "ln -sf" is run multiple times in several threads in parallel on the same target, then see if we can reproduce the database error from pseudo.
Comment 13 Richard Purdie 2025-03-18 22:58:17 UTC
Reopening as recurred
Comment 14 Richard Purdie 2025-03-19 13:36:22 UTC
Reproducer shared on the mailing list https://lists.openembedded.org/g/openembedded-core/message/213331
Comment 15 Ross Burton 2025-03-19 14:35:58 UTC
Just sent a patch to avoid the race in pciutils, at least.
Comment 16 Randy MacLeod 2025-05-01 14:47:52 UTC
*** Bug 15846 has been marked as a duplicate of this bug. ***
Comment 17 Paul Barker 2026-05-13 13:26:52 UTC
The pciutils race was fixed in commit a5fc49fafe910a25be7372c82bfbd7876871ce3f, merged to oe-core in March 2025.

A failing test case was added in commit 0f7c26cf00f67405c2e457e5b91071d1f1b164c5 in pseudo.

Should we open a separate, non-AB-INT bug for following up the failing test cases in pseudo?
Comment 18 Randy MacLeod 2026-05-28 13:17:57 UTC
Bulk move of unassigned 6.0-M* bugs to 6.1-M2.
Comment 19 Paul Barker 2026-08-06 15:20:21 UTC
Possible race conditions in move/rename, Mark added a test case in test/test-parallel-rename.sh in pseudo. I'll close this and open the new bug.