kodi 18.2 fails to build

  • Done
  • quality assurance status badge
Details
5 participants
  • Amirouche
  • Josh Holland
  • Maxim Cournoyer
  • Marius Bakke
  • Ricardo Wurmus
Owner
unassigned
Submitted by
Josh Holland
Severity
normal
J
J
Josh Holland wrote on 15 Jul 2019 21:21
(name . bug-guix)(address . bug-guix@gnu.org)
87wogj3xzo.fsf@inv.alid.pw
Steps to reproduce:
$ guix build kodi

Expected result:
kodi builds successfully

Actual result:
test suite fails, with the below error message

------------8<--------------------

Start 438: TestMassEvent.General
438/521 Test #438: TestMassEvent.General ....................................................Child aborted***Exception: 0.82 sec
Note: Google Test filter = TestMassEvent.General
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from TestMassEvent
[ RUN ] TestMassEvent.General
[ OK ] TestMassEvent.General (105 ms)
[----------] 1 test from TestMassEvent (105 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (142 ms total)
[ PASSED ] 1 test.
kodi-test: ../nptl/pthread_mutex_lock.c:434: __pthread_mutex_lock_full: Assertion `robust || (oldval & FUTEX_OWNER_DIED) == 0' failed.

Start 439: TestMassEvent.Polling
439/521 Test #439: TestMassEvent.Polling ....................................................Child aborted***Exception: 0.79 sec
Note: Google Test filter = TestMassEvent.Polling
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from TestMassEvent
[ RUN ] TestMassEvent.Polling
[ OK ] TestMassEvent.Polling (133 ms)
[----------] 1 test from TestMassEvent (133 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (276 ms total)
[ PASSED ] 1 test.
Clean shutdown of TestGlobalPattern1
kodi-test: ../nptl/pthread_mutex_lock.c:434: __pthread_mutex_lock_full: Assertion `robust || (oldval & FUTEX_OWNER_DIED) == 0' failed.

----------8<----------------------

--
Josh Holland
J
J
Josh Holland wrote on 15 Jul 2019 23:38
Re: bug#36675: Acknowledgement (kodi 18.2 fails to build)
(address . 36675@debbugs.gnu.org)
878ssz0yhi.fsf@inv.alid.pw
I tried again just now, and:
successfully built /gnu/store/pmq2jv9j9snmyzbdngmklghn9bpzrxig-kodi-18.2.drv
/gnu/store/qzc0j7v4b4ylgqrk5n8h2dj5q5bp8qbf-kodi-18.2

It's definitely failed before a bunch of times when I've tried to do
`guix upgrade`, so not sure what to make of it really.

--
Josh Holland
A
A
Amirouche wrote on 16 Jul 2019 00:38
(no subject)
(address . 36675@debbugs.gnu.org)
b9cb2871053f51da471109834027ba98@hyper.dev
I just built it using 8 core cpu without any issues.

Maybe dmesg has useful information regarding the test failure?
J
J
Josh Holland wrote on 30 Jul 2019 11:57
Same build failure with kodi 18.3
(address . 36675@debbugs.gnu.org)
87ftmnsv46.fsf@inv.alid.pw
Hi,

I just had the same error with Kodi 18.3
(z1zswg7wfz4lb6zmyzsns2hpkbw5scir-kodi-18.3.drv), although only with the
TestMassEvent.General test; .Polling passed fine. This kind of makes
sense with it being some sort of race condition on the mutex(?).

----------8<--------------
438/521 Test #438: TestMassEvent.General ....................................................Child aborted***Exception: 1.62 sec
Note: Google Test filter = TestMassEvent.General
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from TestMassEvent
[ RUN ] TestMassEvent.General
[ OK ] TestMassEvent.General (107 ms)
[----------] 1 test from TestMassEvent (107 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (162 ms total)
[ PASSED ] 1 test.
Clean shutdown of TestGlobalPattern1
kodi-test: ../nptl/pthread_mutex_lock.c:434: __pthread_mutex_lock_full: Assertion `robust || (oldval & FUTEX_OWNER_DIED) == 0' failed.

Start 439: TestMassEvent.Polling
439/521 Test #439: TestMassEvent.Polling .................................................... Passed 0.23 sec
----------8<--------------

I had a look in dmesg as suggested by Amirouche, and this appears to be
the only relevant line:

----------8<--------------
[ 1540.045259] audit: type=1701 audit(1564480138.686:163): auid=4294967295 uid=977 gid=977 ses=4294967295 pid=11783 comm="DumbThread" exe="/tmp/guix-build-kodi-18.3.drv-0/build/kodi-test" sig=6 res=1
----------8<--------------


--
Josh Holland
J
J
Josh Holland wrote on 30 Jul 2019 12:20
(address . 36675@debbugs.gnu.org)
87ef27su17.fsf@inv.alid.pw
...and just to confirm that this is some annoyingly unreproducible race
condition, the very next try to build that same z1zswg derivation
completed fine.


--
Josh Holland
R
R
Ricardo Wurmus wrote on 30 Jul 2019 16:15
Re: bug#36675: Same build failure with kodi 18.3
(address . josh@inv.alid.pw)(address . 36675@debbugs.gnu.org)
87r2676231.fsf@elephly.net
Josh Holland <josh@inv.alid.pw> writes:

Toggle quote (4 lines)
> ...and just to confirm that this is some annoyingly unreproducible race
> condition, the very next try to build that same z1zswg derivation
> completed fine.

In this case I think it would be fine to disable this test and add a
comment that explains why.

--
Ricardo
J
J
Josh Holland wrote on 3 Dec 2019 14:52
[PATCH] gnu: kodi: Disable intermittently failing test.
(address . 36675@debbugs.gnu.org)(name . Josh Holland)(address . josh@inv.alid.pw)
20191203135214.1871840-1-josh@inv.alid.pw
As reported in https://issues.guix.gnu.org/issue/36675, occasionally the
TestMassEvent.General test in kodi crashes with a mutex error.

* gnu/packages/patches/kodi-skip-testmasseventgeneral.patch: New file.
* gnu/packages/kodi.scm (kodi)[source]: Use it.
* gnu/local.mk: (dist_patch_DATA): Add it.
---
I have tested building the kodi-wayland package with this patch, and
it successfully builds and the tests pass.

gnu/local.mk | 1 +
gnu/packages/kodi.scm | 3 +-
.../kodi-skip-testmasseventgeneral.patch | 59 +++++++++++++++++++
3 files changed, 62 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/kodi-skip-testmasseventgeneral.patch

Toggle diff (91 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index e2d922373e..4fc690c785 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1036,6 +1036,7 @@ dist_patch_DATA = \
%D%/packages/patches/kodi-increase-test-timeout.patch \
%D%/packages/patches/kodi-set-libcurl-ssl-parameters.patch \
%D%/packages/patches/kodi-skip-test-449.patch \
+ %D%/packages/patches/kodi-skip-testmasseventgeneral.patch \
%D%/packages/patches/laby-make-install.patch \
%D%/packages/patches/lcalc-default-parameters-1.patch \
%D%/packages/patches/lcalc-default-parameters-2.patch \
diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm
index 59ea11f812..04d879bd17 100644
--- a/gnu/packages/kodi.scm
+++ b/gnu/packages/kodi.scm
@@ -281,7 +281,8 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.")
"1m0295czxabdcqyqf5m94av9d88pzhnzjvyfs1q07xqq82h313p7"))
(patches (search-patches "kodi-skip-test-449.patch"
"kodi-increase-test-timeout.patch"
- "kodi-set-libcurl-ssl-parameters.patch"))
+ "kodi-set-libcurl-ssl-parameters.patch"
+ "kodi-skip-testmasseventgeneral.patch"))
(snippet
'(begin
(use-modules (guix build utils))
diff --git a/gnu/packages/patches/kodi-skip-testmasseventgeneral.patch b/gnu/packages/patches/kodi-skip-testmasseventgeneral.patch
new file mode 100644
index 0000000000..89fe60b598
--- /dev/null
+++ b/gnu/packages/patches/kodi-skip-testmasseventgeneral.patch
@@ -0,0 +1,59 @@
+This test has been intermittently failing since version 18.2 (see Guix
+bug 36675).
+
+438/521 Test #438: TestMassEvent.General ....................................................Child aborted***Exception: 0.82 sec
+Note: Google Test filter = TestMassEvent.General
+[==========] Running 1 test from 1 test case.
+[----------] Global test environment set-up.
+[----------] 1 test from TestMassEvent
+[ RUN ] TestMassEvent.General
+[ OK ] TestMassEvent.General (105 ms)
+[----------] 1 test from TestMassEvent (105 ms total)
+
+[----------] Global test environment tear-down
+[==========] 1 test from 1 test case ran. (142 ms total)
+[ PASSED ] 1 test.
+kodi-test: ../nptl/pthread_mutex_lock.c:434: __pthread_mutex_lock_full: Assertion `robust || (oldval & FUTEX_OWNER_DIED) == 0' failed.
+
+---
+ xbmc/threads/test/TestEvent.cpp | 19 +++++++++----------
+ 1 file changed, 9 insertions(+), 10 deletions(-)
+
+diff --git a/xbmc/threads/test/TestEvent.cpp b/xbmc/threads/test/TestEvent.cpp
+index 40e644c0ed..8fe329caa4 100644
+--- a/xbmc/threads/test/TestEvent.cpp
++++ b/xbmc/threads/test/TestEvent.cpp
+@@ -592,17 +592,17 @@ template <class W> void RunMassEventTest(std::vector<std::shared_ptr<W>>& m, boo
+ }
+
+
+-TEST(TestMassEvent, General)
+-{
+- g_event = new CEvent();
++// TEST(TestMassEvent, General)
++// {
++// g_event = new CEvent();
+
+- std::vector<std::shared_ptr<mass_waiter>> m(NUMTHREADS);
+- for(size_t i=0; i<NUMTHREADS; i++)
+- m[i].reset(new mass_waiter());
++// std::vector<std::shared_ptr<mass_waiter>> m(NUMTHREADS);
++// for(size_t i=0; i<NUMTHREADS; i++)
++// m[i].reset(new mass_waiter());
+
+- RunMassEventTest(m,true);
+- delete g_event;
+-}
++// RunMassEventTest(m,true);
++// delete g_event;
++// }
+
+ TEST(TestMassEvent, Polling)
+ {
+@@ -615,4 +615,3 @@ TEST(TestMassEvent, Polling)
+ RunMassEventTest(m,false);
+ delete g_event;
+ }
+-
+--
+2.24.0
--
2.24.0
M
M
Marius Bakke wrote on 21 Mar 2020 21:28
(name . Josh Holland)(address . josh@inv.alid.pw)
8736a15u78.fsf@devup.no
Hi Josh,

Josh Holland <josh@inv.alid.pw> writes:

Toggle quote (3 lines)
> As reported in https://issues.guix.gnu.org/issue/36675, occasionally the
> TestMassEvent.General test in kodi crashes with a mutex error.

This patch feel through the cracks, sorry about that. Can you rebase it
on the current master branch?

TIA, and apologies for the inconvenience.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl52eNsACgkQoqBt8qM6
VPp9gggAuTPydQ3ujqHC2otjsDyWFUvQRBqpWT9ciL6nrRia3OCT04aB4vLod3yF
f6Pcr7QGBMUG9RWyjVH6ldSTAfNx4RyLNowXlMYfc7dR7oVLbCmdehVro2IIw6XF
lOYceGxy61o3p3ER519Vr7WLlcVbQL38Jlzk8Ol4HWurXOKPG+W92iM8LwJtix63
wYOTQt5T+XYoWXgxZkIECRkvDhmpAeCHC3P5XrtzvcdnDF5AiKP69JiGPhV6f3g+
EwtOW15f38QnZb+6VoadPyQPFfC2WGpu3fxnPUeUbnQeAV5/8YYVvj1UKc89fC3D
Jlc2U4G90EwEMjw4XAJLFYMVREq1ZQ==
=3pTN
-----END PGP SIGNATURE-----

M
M
Maxim Cournoyer wrote on 11 Jan 2021 14:36
Re: bug#36675: kodi 18.2 fails to build
(name . Josh Holland)(address . josh@inv.alid.pw)(address . 36675-done@debbugs.gnu.org)
87h7nnoasl.fsf_-_@gmail.com
Hi Josh,

Josh Holland <josh@inv.alid.pw> writes:

Toggle quote (7 lines)
> I tried again just now, and:
> successfully built /gnu/store/pmq2jv9j9snmyzbdngmklghn9bpzrxig-kodi-18.2.drv
> /gnu/store/qzc0j7v4b4ylgqrk5n8h2dj5q5bp8qbf-kodi-18.2
>
> It's definitely failed before a bunch of times when I've tried to do
> `guix upgrade`, so not sure what to make of it really.

Kodi has since been updated to 18.8 (thanks to Timotej!), and there are
substitutes available for it, so I reckon it builds!

Thank you for the report.

Closing,

Maxim
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 36675@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 36675
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch