Details
-
Bug
-
Resolution: Unresolved
-
P1: Critical
-
None
-
6.5.3
-
None
Description
Multithreaded Qt6 application segfaults once in thousand reboots. getenv segfault is in pulseaudio. However, it is caused by qputenv/qunsetenv calls in qtbase thread which modifies the environment.
Other details:
i.MX8MP SOC
xwayland with Vivante drivers
Yocto Kirkstone release
(gdb) thread apply all bt
{}...
Thread 4 (Thread 0xffffbe38a500 (LWP 833)):
#0 0x0000ffffbb573100 in ?? () from /lib/libQt6Gui.so.6
#1 0x0000ffffbb5be4e4 in ?? () from /lib/libQt6Gui.so.6
#2 0x0000ffffbb5b18a0 in QGuiApplicationPrivate::createPlatformIntegration() () from /lib/libQt6Gui.so.6
#3 0x0000ffffbb5b19c0 in QGuiApplicationPrivate::createEventDispatcher() () from /lib/libQt6Gui.so.6
#4 0x0000ffffbad483f0 in QCoreApplicationPrivate::init() () from /lib/libQt6Core.so.6
#5 0x0000ffffbb5b4d90 in QGuiApplicationPrivate::init() () from /lib/libQt6Gui.so.6
#6 0x0000ffffbb5b63bc in QGuiApplication::QGuiApplication(int&, char**, int) () from /lib/libQt6Gui.so.6
#7 0x0000aaaadee9a294 in ?? ()
#8 0x0000aaaadee9de6c in ?? ()
#9 0x0000aaaadee95ae4 in ?? ()
#10 0x0000ffffbb27b230 in ?? () from /lib/libc.so.6
#11 0x0000ffffbb27b30c in __libc_start_main () from /lib/libc.so.6
#12 0x0000aaaadee93c70 in ?? ()
...
-Type <RET> for more, q to quit, c to continue without paging-
Thread 1 (Thread 0xffffafffea60 (LWP 873)):
#0 0x0000ffffbb28f978 in getenv () from /lib/libc.so.6
#1 0x0000ffffa49084c0 in init_defaults () at ../pulseaudio-15.0/src/pulsecore/log.c:303
#2 0x0000ffffa4908c30 in init_defaults () at ../pulseaudio-15.0/src/pulsecore/log.c:574
#3 pa_log_levelv_meta (level=level@entry=PA_LOG_DEBUG, file=file@entry=0xffffa492b6f8 "../pulseaudio-15.0/src/pulsecore/conf-parser.c", line=line@entry=184, func=func@entry=0xffffa492b998 <_func_.19> "pa_config_parse", format=format@entry=0xffffa492b768 "Parsing configuration file '%s'", ap=...) at ../pulseaudio-15.0/src/pulsecore/log.c:394
#4 0x0000ffffa4908740 in pa_log_level_meta (level=level@entry=PA_LOG_DEBUG, file=file@entry=0xffffa492b6f8 "../pulseaudio-15.0/src/pulsecore/conf-parser.c", line=line@entry=184, func=func@entry=0xffffa492b998 <_func_.19> "pa_config_parse", format=format@entry=0xffffa492b768 "Parsing configuration file '%s'") at ../pulseaudio-15.0/src/pulsecore/log.c:585
#5 0x0000ffffa48f3cf8 in pa_config_parse (filename=0xffff18019d40 "/etc/pulse/client.conf", f=f@entry=0xffff18002240, t=t@entry=0xffffafffbb08, proplist=proplist@entry=0x0, use_dot_d=false, use_dot_d@entry=true, userdata=0xffff18002240, userdata@entry=0x0) at ../pulseaudio-15.0/src/pulsecore/conf-parser.c:184
#6 0x0000ffffa48e597c in pa_client_conf_load (c=0xffff18019a90, load_from_x11=load_from_x11@entry=true, load_from_env=load_from_env@entry=true) at ../pulseaudio-15.0/src/pulse/client-conf.c:155
#7 0x0000ffffa496ff90 in pa_context_new_with_proplist (p=<optimized out>, name=<optimized out>, mainloop=0xffff18017948) at ../pulseaudio-15.0/src/pulse/context.c:175
#8 pa_context_new_with_proplist (mainloop=0xffff18017948, name=<optimized out>, p=<optimized out>) at ../pulseaudio-15.0/src/pulse/context.c:128
#9 0x0000ffffb5c24620 in pulse_new () at ../../alsa-plugins-1.2.6/pulse/pulse.c:157
#10 0x0000ffffb5c23fc8 in _snd_pcm_pulse_open (pcmp=pcmp@entry=0xffffa86ff238, name=name@entry=0xaaaae18a2008 "default", root=root@entry=0xffff180021f0, conf=conf@entry=0xffff18003510, stream=stream@entry=SND_PCM_STREAM_PLAYBACK, mode=mode@entry=1) at ../../alsa-plugins-1.2.6/pulse/pcm_pulse.c:1129
#11 0x0000ffffbd249f30 in snd_pcm_open_conf (pcmp=pcmp@entry=0xffffa86ff238, name=name@entry=0xaaaae18a2008 "default", pcm_root=pcm_root@entry=0xffff180021f0, pcm_conf=0xffff18003510, stream=stream@entry=SND_PCM_STREAM_PLAYBACK, mode=mode@entry=1) at ../../../alsa-lib-1.2.6.1/src/pcm/pcm.c:2613
#12 0x0000ffffbd24a534 in snd_pcm_open_noupdate (pcmp=pcmp@entry=0xffffa86ff238, root=0xffff180021f0, name=name@entry=0xaaaae18a2008 "default", stream=stream@entry=SND_PCM_STREAM_PLAYBACK, mode=mode@entry=1, hop=hop@entry=0) at ../../../alsa-lib-1.2.6.1/src/pcm/pcm.c:2672
#13 0x0000ffffbd24d754 in snd_pcm_open (pcmp=0xffffa86ff238, name=0xaaaae18a2008 "default", stream=SND_PCM_STREAM_PLAYBACK, mode=1) at ../../../alsa-lib-1.2.6.1/src/pcm/pcm.c:2702
{{}}
{{}}
1. Pulseaudio bug report (caused by qt thread):
https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/3829
2. libQt6Gui.so.6 - qtbase-6.5.3 use qputenv()/qunsetenv() to modify environment variables.{}
Attachments
Issue Links
- relates to
-
QTBUG-128352 Potential thread safety issue in many Qt Quick 3D examples
- Closed