[PATCH v2 0/1] MR9751: Draft: gitlab: Make core files accessible as artifacts.
All some days there is an issue with the `debian-32` gitlab job showing a segfault. But it also shows `core dumped`. This merge request is the attempt to make this core file available as artifact. Last segfault example from yesterday: https://gitlab.winehq.org/wine/wine/-/jobs/216539#L135 ``` /usr/bin/bash: line 213: 185 Segmentation fault (core dumped) wine usr/local/lib/wine/i386-windows/winetest.exe -q ``` -- v2: gitlab: Make core files accessible as artifacts. https://gitlab.winehq.org/wine/wine/-/merge_requests/9751
From: Bernhard Übelacker <bernhardu@mailbox.org> --- tools/gitlab/test.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tools/gitlab/test.yml b/tools/gitlab/test.yml index e10ecd57026..b15bdbbcf39 100644 --- a/tools/gitlab/test.yml +++ b/tools/gitlab/test.yml @@ -42,6 +42,7 @@ - mkdir -p $HOME/Documents $HOME/Desktop usr/local/share/wine/gecko usr/local/share/wine/mono - ln -sf $BASEDIR/wine-gecko-$GECKO_VER-x86.msi $BASEDIR/wine-gecko-$GECKO_VER-x86_64.msi usr/local/share/wine/gecko - ln -sf $BASEDIR/wine-mono-$MONO_VER-x86.msi usr/local/share/wine/mono + - touch core-placeholder - pulseaudio --start --exit-idle-time=-1 - wine wineboot.exe -u - wineserver -w @@ -157,6 +158,11 @@ debian-32: - if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH needs: - job: build-daily-linux + artifacts: + expire_in: 1 month + when: on_failure + paths: + - "*core*" script: - wine usr/local/lib/wine/i386-windows/winetest.exe -q @@ -171,6 +177,11 @@ debian-64: - if: $CI_PIPELINE_SOURCE == 'trigger' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH needs: - job: build-daily-linux + artifacts: + expire_in: 1 month + when: on_failure + paths: + - "*core*" script: - wine usr/local/lib/wine/x86_64-windows/winetest.exe -q -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/9751
v2: - collect artifacts only "on_failure" - add "expire_in: 1 month" - create a "core-placeholder" to avoid a warning if it fails and there is no core file available. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_125417
Happened today also in [debian-wow64](https://gitlab.winehq.org/wine/wine/-/jobs/220041). -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_126427
And today again with [debian-32](https://gitlab.winehq.org/wine/wine/-/jobs/221840#L142). Looks like it happens always near the end of the run. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127141
Yes, but I don't expect that we'll get a core file, these are managed by systemd these days. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127185
On Fri Jan 16 21:23:58 2026 +0000, Alexandre Julliard wrote:
Yes, but I don't expect that we'll get a core file, these are managed by systemd these days. Is this probably just true if systemd runs also inside the container? [In this test appeared a core file](https://gitlab.winehq.org/bernhardu/wine/-/jobs/222157#L92).
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127211
On Fri Jan 16 21:32:44 2026 +0000, Bernhard Übelacker wrote:
And today again with [debian-32](https://gitlab.winehq.org/wine/wine/-/jobs/221840#L142). Looks like it happens always near the end of the run. @julliard, a little offtopic question: Does dmesg show at this ci-host the crash lines with the surrounding bytes for the crash in above debian-32 run?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127212
On Fri Jan 16 21:32:44 2026 +0000, Bernhard Übelacker wrote:
@julliard, a little offtopic question: Does dmesg show at this ci-host the crash lines with the surrounding bytes for the crash in above debian-32 run? No, there's no crash in the kernel logs.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127213
On Fri Jan 16 21:59:16 2026 +0000, Alexandre Julliard wrote:
No, there's no crash in the kernel logs. My mistake, the failed job was on the other runner:
``` Jan 15 17:15:59 runner1 kernel: wine-preloader[3933127]: segfault at 7ffffe0013bb ip 00007f6ddeb833c7 sp 00007ffffdffe4d0 error 4 in wine-preloader[7f6ddeb83000+2000] likely on CPU 30 (core 10, socket 0) Jan 15 17:15:59 runner1 kernel: Code: e2 0f b6 7e 02 48 8d 4a 10 e9 ad fe ff ff 0f 1f 44 00 00 41 8b 0a 83 f9 2f 77 78 89 cf 83 c1 08 49 03 7a 10 41 89 0a 48 8b 3f <0f> b6 0f 84 c9 0f 84 7f fe ff ff 66 66 2e 0f 1f 84 00 00 00 00 00 ``` -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127214
On Fri Jan 16 22:09:06 2026 +0000, Alexandre Julliard wrote:
My mistake, the failed job was on the other runner: ``` Jan 15 17:15:59 runner1 kernel: wine-preloader[3933127]: segfault at 7ffffe0013bb ip 00007f6ddeb833c7 sp 00007ffffdffe4d0 error 4 in wine-preloader[7f6ddeb83000+2000] likely on CPU 30 (core 10, socket 0) Jan 15 17:15:59 runner1 kernel: Code: e2 0f b6 7e 02 48 8d 4a 10 e9 ad fe ff ff 0f 1f 44 00 00 41 8b 0a 83 f9 2f 77 78 89 cf 83 c1 08 49 03 7a 10 41 89 0a 48 8b 3f <0f> b6 0f 84 c9 0f 84 7f fe ff ff 66 66 2e 0f 1f 84 00 00 00 00 00 ``` That line in combination with the binaries from that pipeline led me to function `wld_vsprintf`, probably processing a format %s.
Unfortunately that gets called by a few other functions. ``` Address What 0x00007f02e39f03c7 in wld_vsprintf at ../loader/preloader.c:721 loader/preloader.c: 718 else if( *p == 's' ) 719 { 720 char *s = va_arg( args, char * ); 721 while(*s) 722 *str++ = *s++; 723 } ``` Details here [gitlab-crash_2026-01-15.txt](/uploads/49f59046d0bcba0f5c8fa76289cc1d83/gitlab-crash_2026-01-15.txt) -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127240
On Fri Jan 16 22:56:48 2026 +0000, Bernhard Übelacker wrote:
That line in combination with the binaries from that pipeline led me to function `wld_vsprintf`, probably processing a format %s. Unfortunately that gets called by a few other functions. ``` Address What 0x00007f02e39f03c7 in wld_vsprintf at ../loader/preloader.c:721 loader/preloader.c: 718 else if( *p == 's' ) 719 { 720 char *s = va_arg( args, char * ); 721 while(*s) 722 *str++ = *s++; 723 } ``` Details here [gitlab-crash_2026-01-15.txt](/uploads/49f59046d0bcba0f5c8fa76289cc1d83/gitlab-crash_2026-01-15.txt) Is at this host a core saved by systemd?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127241
On Fri Jan 16 22:58:38 2026 +0000, Bernhard Übelacker wrote:
Is at this host a core saved by systemd? Good question, I don't see one, but I'm not sure it was configured correctly. I've done some upgrades so hopefully it will work now.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127263
On Sat Jan 17 10:51:14 2026 +0000, Alexandre Julliard wrote:
Good question, I don't see one, but I'm not sure it was configured correctly. I've done some upgrades so hopefully it will work now. The time of the dmesg line '17:15' and the start "11:10:20 PM GMT+1" (maybe 17:10 local time?) and duration of 30 minutes of the [failed job #221840](https://gitlab.winehq.org/wine/wine/-/jobs/221840#L142) may not match, if assumed it happens at the end of the run.
The other doubt is the segmentation fault shows `wine ...i386-windows/winetest.exe...`, but the dmesg looks like a 64-bit process. New examples may give more insight. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_127267
On Sat Jan 17 13:27:49 2026 +0000, Bernhard Übelacker wrote:
The time of the dmesg line '17:15' and the start "11:10:20 PM GMT+1" (maybe 17:10 local time?) and duration of 30 minutes of the [failed job #221840](https://gitlab.winehq.org/wine/wine/-/jobs/221840#L142) may not match, if assumed it happens at the end of the run. The other doubt is the segmentation fault shows `wine ...i386-windows/winetest.exe...`, but the dmesg looks like a 64-bit process. New examples may give more insight. [A new example arrived](https://gitlab.winehq.org/wine/wine/-/jobs/225944), got there something collected at the host in dmesg or coredumpctl?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_128794
On Wed Feb 4 21:04:21 2026 +0000, Bernhard Übelacker wrote:
[A new example arrived](https://gitlab.winehq.org/wine/wine/-/jobs/225944), got there something collected at the host in dmesg or coredumpctl? Yes, the information was collected and I was able to investigate it. Hopefully 4a9bc42a4337e111a82cc98a4def61708d3557cf is the correct fix.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_128819
On Wed Feb 4 21:37:53 2026 +0000, Alexandre Julliard wrote:
Yes, the information was collected and I was able to investigate it. Hopefully 4a9bc42a4337e111a82cc98a4def61708d3557cf is the correct fix. Great to hear, thank you.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751#note_128821
This merge request was closed by Bernhard Übelacker. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9751
participants (4)
-
Alexandre Julliard (@julliard) -
Bernhard Übelacker -
Bernhard Übelacker (@bernhardu) -
Bernhard Übelacker (@bernhardu)