Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parallel rpmfc thread-safety - libmagic may fork helpers #756

Closed
pmatilai opened this issue Jun 19, 2019 · 9 comments
Closed

Parallel rpmfc thread-safety - libmagic may fork helpers #756

pmatilai opened this issue Jun 19, 2019 · 9 comments

Comments

@pmatilai
Copy link
Member

When using MAGIC_COMPRESS (as rpmfc does), libmagic may fork helper executables to deal with decompressing files. Since commit 41f0e21 we are running the classifier in threads, and mixing fork() and threads tends to mean trouble.

Filing this ticket as a reminder to look into and deal with it one way or the other: use of MAGIC_COMPRESS dates back to 2009 (commit c3770c9), predating the current customizable classifier and availability of path based rules. Looking into compressed files was necessary for at least font provide extraction but we could trivially use paths for that now instead.

@pmatilai pmatilai added this to the 4.15.0 milestone Jun 19, 2019
@pmatilai pmatilai removed this from the 4.15.0 milestone Sep 26, 2019
@pmatilai
Copy link
Member Author

For the record, there have been some reports of builds hanging during classification on systems with large number of CPUs using file 5.36 which where fixed by updating to 5.37. Another workaround is to set %_smp_build_nthreads to a smaller number, ultimately 1 to make the whole classification run in serial as it always used to.

@kanavin
Copy link
Contributor

kanavin commented Oct 23, 2019

Sadly, I am seeing this when rpm is linked against file 5.37 as well. Here's a couple tracebacks obtained by attaching gdb to running (hanging) rpm processes:

0x00007fc5a9ee22a1 in ?? () from /usr/lib/x86_64-linux-gnu/libgomp.so.1
(gdb) bt
#0 0x00007fc5a9ee22a1 in ?? () from /usr/lib/x86_64-linux-gnu/libgomp.so.1
#1 0x00007fc5ab0579be in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/elfutils/0.177-r0/recipe-sysroot-native/usr/bin/../lib/librpmbuild.so.9
#2 0x00007fc5a9ed6ecf in GOMP_parallel () from /usr/lib/x86_64-linux-gnu/libgomp.so.1
#3 0x00007fc5ab058b3c in rpmfcClassify () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/elfutils/0.177-r0/recipe-sysroot-native/usr/bin/../lib/librpmbuild.so.9
#4 0x00007fc5ab0598e6 in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/elfutils/0.177-r0/recipe-sysroot-native/usr/bin/../lib/librpmbuild.so.9
#5 0x00007fc5ab04aa3b in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/elfutils/0.177-r0/recipe-sysroot-native/usr/bin/../lib/librpmbuild.so.9
#6 0x00007fc5ab044f74 in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/elfutils/0.177-r0/recipe-sysroot-native/usr/bin/../lib/librpmbuild.so.9
#7 0x0000562e400c1ad1 in ?? ()
#8 0x0000562e400c1c33 in ?? ()
#9 0x0000562e400c0da3 in ?? ()
#10 0x00007fc5aa7d3ddb in __libc_start_main () from /home/alexander/development/poky/build-x86-64/tmp/sysroots-uninative/x86_64-linux/lib/libc.so.6
#11 0x0000562e400c107a in ?? ()

0x00007f2220f000ee in waitpid () from /home/alexander/development/poky/build-x86-64/tmp/sysroots-uninative/x86_64-linux/lib/libc.so.6
(gdb) bt
#0 0x00007f2220f000ee in waitpid () from /home/alexander/development/poky/build-x86-64/tmp/sysroots-uninative/x86_64-linux/lib/libc.so.6
#1 0x00007f221ff53f46 in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/util-linux/2.34-r0/recipe-sysroot-native/usr/lib/rpm/.././libmagic.so.1
#2 0x00007f221ff54478 in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/util-linux/2.34-r0/recipe-sysroot-native/usr/lib/rpm/.././libmagic.so.1
#3 0x00007f221ff57b16 in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/util-linux/2.34-r0/recipe-sysroot-native/usr/lib/rpm/.././libmagic.so.1
#4 0x00007f221ff48e54 in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/util-linux/2.34-r0/recipe-sysroot-native/usr/lib/rpm/.././libmagic.so.1
#5 0x00007f2221223bb9 in ?? () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/util-linux/2.34-r0/recipe-sysroot-native/usr/lib/rpm/../librpmbuild.so.9
#6 0x00007f221f894ecf in GOMP_parallel () from /usr/lib/x86_64-linux-gnu/libgomp.so.1
#7 0x00007f2221224b3c in rpmfcClassify () from /home/alexander/development/poky/build-x86-64/tmp/work/core2-64-poky-linux/util-linux/2.34-r0/recipe-sysroot-native/usr/lib/rpm/../librpmbuild.so.9
#8 0x0000556ed5245571 in ?? ()
#9 0x00007f2220e5eddb in __libc_start_main () from /home/alexander/development/poky/build-x86-64/tmp/sysroots-uninative/x86_64-linux/lib/libc.so.6
#10 0x0000556ed524579a in ?? ()

Process tree shows:

rpmbuild.real─┬─2*[bzip2]
└─31*[{rpmbuild.real}]

rpmdeps.real─┬─29*[xz]
└─31*[{rpmdeps.real}]

@kanavin
Copy link
Contributor

kanavin commented Oct 23, 2019

TBH, this seems like a serious enough issue in 4.15.0 release, that parallel file classification should be simply disabled for the time being, with a 4.15.0.1 issued to include that. I don't want to set %_smp_build_nthreads to 1, as Yocto project does benefit greatly from parallel binary package creation.

@pmatilai
Copy link
Member Author

TBH, the thought of reverting the whole damn threading business has crossed my mind more than once by now, it is (quite expectedly) proving painful. I've resisted the temptation so far...

The thing is that this hasn't been an issue on Fedora at all, AFAIK. If we just disable without understanding where the difference comes from, it'll still be there the next time we try enabling it.
Instead it's the parallel binary package creation that has been the source of problems there, and I've been considering disabling that on 32bit architectures entirely.

@pmatilai
Copy link
Member Author

Anyway, there will be a bugfix release to 4.15.x soonish, there's a handful of fairly critical things that needs addressing. I mean, it is a .0 release...

@kanavin
Copy link
Contributor

kanavin commented Oct 24, 2019

Let's work together and sort the problem. If you would like me to run additional diagnostics, I'd be happy to help.

halstead pushed a commit to openembedded/openembedded-core that referenced this issue Nov 22, 2019
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gbionescu pushed a commit to gbionescu/poky that referenced this issue Nov 22, 2019
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 07578214581ba09ea63917572342969f9cc51ae2)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Dec 6, 2019
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gbionescu pushed a commit to gbionescu/poky that referenced this issue Dec 6, 2019
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: cf5820719a337b5cfe305ca7bdd7ebaab668f319)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gbionescu pushed a commit to gbionescu/poky that referenced this issue Dec 6, 2019
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: cf5820719a337b5cfe305ca7bdd7ebaab668f319)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Jan 8, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gbionescu pushed a commit to gbionescu/poky that referenced this issue Jan 8, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 2e57ed3d76ef37aba8868c93fd37abacb97a7435)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gbionescu pushed a commit to gbionescu/poky that referenced this issue Jan 8, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 2e57ed3d76ef37aba8868c93fd37abacb97a7435)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/openembedded-core that referenced this issue Jan 8, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
@ffesti ffesti added this to Needs triage in Ticket Review (Outdated) Mar 3, 2020
@pmatilai pmatilai moved this from Needs triage to Maybe in Ticket Review (Outdated) Mar 4, 2020
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Apr 26, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/poky that referenced this issue Apr 26, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 870c4bfc1c699543dcbd712f97deceb206976cd5)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Apr 27, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 27, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 3c4a33a24891855fb60934399b3630ee03bcd7b0)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/poky that referenced this issue Apr 27, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 3c4a33a24891855fb60934399b3630ee03bcd7b0)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Apr 27, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 27, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 3b35000667cd6084ca14bc04ada55ec01752182f)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
armcc pushed a commit to lgirdk/poky that referenced this issue Apr 27, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 3b35000667cd6084ca14bc04ada55ec01752182f)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Apr 28, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 28, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: ea287491ad1f2e0c92ba9ded33b59892790d00d9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 29, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: ea287491ad1f2e0c92ba9ded33b59892790d00d9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Apr 29, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
armcc pushed a commit to lgirdk/poky that referenced this issue Apr 29, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: f0526ccf0d244e3ff995604f68c51199154e16ad)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 29, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: f0526ccf0d244e3ff995604f68c51199154e16ad)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 30, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: f0526ccf0d244e3ff995604f68c51199154e16ad)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Apr 30, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 30, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 8514da3601c5631cf9b05a627cac6204519b8d57)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/poky that referenced this issue Apr 30, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 8514da3601c5631cf9b05a627cac6204519b8d57)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Apr 30, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 8514da3601c5631cf9b05a627cac6204519b8d57)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue May 1, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 8514da3601c5631cf9b05a627cac6204519b8d57)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue May 2, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 8514da3601c5631cf9b05a627cac6204519b8d57)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue May 2, 2020
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
@kanavin
Copy link
Contributor

kanavin commented Oct 18, 2020

I dug a bit deeper: the issue happens when libmagic calls out to external executables, which isn't implemented in a thread-safe way, and locks up. Enabling internal compression support (done via linking to libraries) makes the issue go away.

@pmatilai
Copy link
Member Author

Yup, at least one such issue has just been addressed here: file/file@81f15c2b

@pmatilai
Copy link
Member Author

Based on internal testing, the above seems to have cured the remaining cases, so considering closed.

Ticket Review (Outdated) automation moved this from Maybe to Closed Jan 15, 2021
sgunin pushed a commit to sgunin/oe-openembedded-core-contrib that referenced this issue Mar 17, 2024
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
daregit pushed a commit to daregit/yocto-combined that referenced this issue May 22, 2024
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 67257ca87c6fa8e6050a20ecea50daf834c7e869)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
daregit pushed a commit to daregit/yocto-combined that referenced this issue May 22, 2024
Drop patches that were merged upstream.

0001-mono-find-provides-requires-do-not-use-monodis-from-.patch
modifies a file that was removed upstream.

Add a 0001-rpmfc.c-do-not-run-file-classification-in-parallel.patch
as unfortunately the new parallel file classification feature from
upstream trips over somewhere in libmagic when inspected files are
compressed:
rpm-software-management/rpm#756

(From OE-Core rev: 67257ca87c6fa8e6050a20ecea50daf834c7e869)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants