On Tue, Mar 22, 2022 at 12:55:48PM -0400, Prarit Bhargava wrote:
> Hey everyone,
> 
> This issue was found in centos-stream-9 when I backported the parallel
> config processing code into that codebase.  I can reproduce it on my desktop
> but do not have enough Makefile-fu to figure out why this happens.  I do see
> a very similar error [1] reported so I suspect that I've exposed a race
> rather than caused one.
> 
> The error which originally popped up for s390x here:
> 
> https://gitlab.com/redhat/red-hat-ci-tools/kernel/cki-internal-pipelines/cki-internal-contributors/-/jobs/2197113816#L74
> 
> can be reproduced on the command line here:
> 
> http://pastebin.test.redhat.com/1038965
> 
> Any help on this would be appreciated,

I have zero Makefile-fu :), but ...

each config target depends on scripts_basic[a]

        %config: outputmakefile scripts_basic FORCE

which is actually compilation of fixdep.

IIUC process_config(), which is running in parallel, is calling listnewconfig 
target.
Meaning several processes are trying to build fixdep and some instances
fail to write it, because it's already running. Hence the "Text file busy".
I can get the same error when running just

$ for i in $(seq 1 10); do make V=1 scripts_basic & done

I think running "make scripts_basic" before starting the parallel
processing of configs should help. Meaning the fixdep would be compiled
beforehand.

Just my $0.02

[a] https://gitlab.com/cki-project/kernel-ark/-/blob/os-build/Makefile#L622

> 
> P.
> 
> [1] https://github.com/raspberrypi/linux/issues/2579
> 

-- 
Frantisek Hrbata
_______________________________________________
kernel mailing list -- kernel@lists.fedoraproject.org
To unsubscribe send an email to kernel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org
Do not reply to spam on the list, report it: 
https://pagure.io/fedora-infrastructure

Reply via email to