1 |
On Wednesday, 20 October 2021 10:34:47 PM NZDT Alexey Sokolov wrote: |
2 |
> 20.10.2021 09:40, James Beddek пишет: |
3 |
> > As part of transitioning to using Clang as my system compiler, I have been |
4 |
> > running tests on most packages to determine if they still properly |
5 |
> > function. However, this has introduced a problem where some KDE package |
6 |
> > tests segfault. |
7 |
> > Unfortunately, this launches DrKonqi in the virtx display to display a |
8 |
> > backtrace. |
9 |
> > |
10 |
> > This results in the test phase hanging as DrKonqi is presumably waiting |
11 |
> > for user input.> |
12 |
> > See below for an instance of a test phase hanging as seen through `top -b |
13 |
-c -n 1 -u portage`: |
14 |
> > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ |
15 |
> > COMMAND |
16 |
> > |
17 |
> > 3441869 portage 30 10 2360 1560 1400 S 0.0 0.0 0:00.00 |
18 |
> > [kde-apps/ark-21.08.2] sandbox /usr/lib/portage/python3.9/ebuild.sh test |
19 |
> > 3441870 portage 30 10 12896 7688 3592 S 0.0 0.0 0:00.01 |
20 |
> > /bin/bash /usr/lib/portage/python3.9/ebuild.sh test 3441886 portage 30 |
21 |
> > 10 13036 6296 2064 S 0.0 0.0 0:00.01 /bin/bash |
22 |
> > /usr/lib/portage/python3.9/ebuild.sh test 3441908 portage 30 10 |
23 |
> > 150436 59128 44836 S 0.0 0.1 0:00.03 /usr/bin/Xvfb :16 -screen 0 |
24 |
> > 1280x1024x24 +extension RANDR 3441936 portage 30 10 55000 15512 |
25 |
> > 13416 S 0.0 0.0 0:00.02 ctest -j 16 --test-load 999 3441938 portage |
26 |
> > 30 10 487364 58044 46480 T 0.0 0.1 0:00.20 |
27 |
> > /var/tmp/portage/kde-apps/ark-21.08.2/work/ark-21.08.2_build/bin/addtoarc |
28 |
> > hivetest 3442262 portage 30 10 9176 2336 1600 S 0.0 0.0 |
29 |
> > 0:00.00 dbus-launch --autolaunch 8d4328e526b647a5a2e029d1e0814ba6 |
30 |
> > --binary-syntax --close-stderr 3442279 portage 30 10 9460 4180 |
31 |
> > 3408 S 0.0 0.0 0:00.00 /usr/bin/dbus-daemon --syslog-only --fork |
32 |
> > --print-pid 5 --print-address 7 --session 3444712 portage 30 10 |
33 |
> > 350068 94032 78820 S 0.0 0.1 0:00.15 /usr/lib64/libexec/drkonqi |
34 |
> > --platform xcb --display :16 --appname addtoarchivetest ___ |
35 |
> > |
36 |
> > As far as I can tell, without sending SIGKILL to the test being traced |
37 |
> > (addtoarchivetest in this instance), the test phase never exits. |
38 |
> > |
39 |
> > KDE provides a variable, KDE_DEBUG [1], which when set disables the |
40 |
> > DrKonqi crash handler. Using this results in the tests segfaulting and |
41 |
> > the test phase simply failing, rather than hanging. |
42 |
> Do crashes of other (non-ecm) tests trigger DrKonqi too? What's the |
43 |
> reason to add this variable only to ecm.eclass? |
44 |
> |
45 |
|
46 |
As far as I can tell only packages that use ecm.eclass trigger DrKonqi upon a |
47 |
test segfault. However, this may just be to me not experiencing crashes in |
48 |
other test suites. To the best of my knowledge it's purely the KDE/ecm |
49 |
packages. |
50 |
|
51 |
Cheers |
52 |
|
53 |
> > Most of the crashing tests are a result of kde-frameworks/kjs being built |
54 |
> > with Clang. I have opened a bug report about this on bugs.kde.org [2]. |
55 |
> > |
56 |
> > Hopefully this is an acceptable solution. I have submitted a corresponding |
57 |
> > GitHub PR [3]. Cheers |
58 |
> > |
59 |
> > [1]: |
60 |
> > https://userbase.kde.org/KDE_System_Administration/Environment_Variables# |
61 |
> > KDE_DEBUG [2]: https://bugs.kde.org/show_bug.cgi?id=444003#c5 |
62 |
> > [3]: https://github.com/gentoo/gentoo/pull/22643 |
63 |
> > |
64 |
> > James Beddek (1): |
65 |
> > ecm.eclass: set KDE_DEBUG=1 for ecm_src_test |
66 |
> > |
67 |
> > eclass/ecm.eclass | 3 ++- |
68 |
> > 1 file changed, 2 insertions(+), 1 deletion(-) |