https://bugs.winehq.org/show_bug.cgi?id=45589
Bug ID: 45589 Summary: Starcraft 2: Sound stops working after a while Product: Wine-staging Version: 3.13 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: yumekuineru@hotmail.com CC: leslie_alistair@hotmail.com, z.figura12@gmail.com Distribution: ---
Created attachment 62013 --> https://bugs.winehq.org/attachment.cgi?id=62013 Sound stopped working within the last 10 seconds
Sound sometimes drops out for me in the middle of a Starcraft 2 game or replay (or it seems while at main menu also). After sound drops out the same behaviour as is reported in the bug https://bugs.winehq.org/show_bug.cgi?id=45502 occurs (the game freezes if audio device setting is changed or the exit game button is pressed)
It might be one of my overrides since it is a prefix I have not modified in a while after I managed to get it working, though the issue started occuring quite recently. It occurs less frequently than all the time as was the case before the fixes staged in this issue though.
Versions: WINE_COMMIT="25cc380b8ed41652b135657ef7651beef2f20ae4" #3.13 STAGING_COMMIT="2f3ba1fb462894ad267d72d07ed2114e0ae1f5c2"
Patches applied (all seem to mainly pertain to League of Legends): 0003-Pretend-to-have-a-wow64-dll.patch 0006-Refactor-LdrInitializeThunk.patch 0007-Refactor-RtlCreateUserThread-into-NtCreateThreadEx.patch 0009-Refactor-__wine_syscall_dispatcher-for-i386.patch Attachment in https://bugs.winehq.org/show_bug.cgi?id=45550#c8
I am not sure how to reliably reproduce the issue, though I was able to capture a debug log from the channels described on the wiki for Sound: +tid,+seh,+mmdevapi,+winmm,+driver,+msacm,+midi,+dsound,+dsound3d,+xaudio2,+xapofx,+dmusic,+mci,+pulse,+oss,+alsa,+coreaudio,+timestamp
I copied the file I was redirecting output to when I heard sound stop (perhaps a few seconds after), then took the tail of the copied file which seems to span abouts 10 seconds of logtime.
I do not believe I have made any changes to pulseaudio except for disabling flat-volumes and adding the following sink (that currently was not being used):
``` DEFAULT_OUTPUT=$(pacmd list-sinks | grep -A1 "* index" | grep -oP "<\K[^ >]+") pactl load-module module-combine-sink sink_name=recordleague slaves=$DEFAULT_OUTPUT sink_properties=device.description="leagueaudio"
```
https://bugs.winehq.org/show_bug.cgi?id=45589
ykui yumekuineru@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |aeikum@codeweavers.com
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #1 from Andrew Eikum aeikum@codeweavers.com --- Thanks. What kind of audio hardware are you using? USB headset, motherboard analog output, something else?
It occurs less frequently than all the time as was the case before the fixes staged in this issue though.
So this isn't a new bug introduced in a recent wine-staging version, right? The newer version improves, but doesn't fix, your audio?
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #2 from ykui yumekuineru@hotmail.com --- (In reply to Andrew Eikum from comment #1)
It occurs less frequently than all the time as was the case before the fixes staged in this issue though.
So this isn't a new bug introduced in a recent wine-staging version, right? The newer version improves, but doesn't fix, your audio?
It has not occurred that I can recall prior to 18f4be0. The recent commits did fix the issue introduced there in that before the fixes sound was broken from launch while now sound breaks after a while. I can attempt with the version that fixed the previously reported isse (bug #45502) in case it is a more recent commit that introduced it.
Thanks. What kind of audio hardware are you using? USB headset, motherboard analog output, something else?
I use analog output from the motherboard. snd_hda_codec_realtek hdaudioC2D0 (ALC892) is what dmesg reports
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #3 from Andrew Eikum aeikum@codeweavers.com --- Understood, thanks. I see some interesting behavior in the log, I'll look further into it.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #4 from ykui yumekuineru@hotmail.com --- Occurs with f0d3ae8 and none of the patches listed in the first post as well
https://bugs.winehq.org/show_bug.cgi?id=45589
Ben Parsons 9parsonsb@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |9parsonsb@gmail.com
--- Comment #5 from Ben Parsons 9parsonsb@gmail.com --- Is this bug present in staging 1.13.1? As I thought this was fixed.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #6 from ykui yumekuineru@hotmail.com --- (In reply to Ben Parsons from comment #5)
Is this bug present in staging 1.13.1? As I thought this was fixed.
2f3ba1fb was immediately after 3.13.1 (9a1a1f02) so the issue as reported here occurs there for me at least I guess
https://bugs.winehq.org/show_bug.cgi?id=45589
dura dura@duradsl.duckdns.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dura@duradsl.duckdns.org
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #7 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 62018 --> https://bugs.winehq.org/attachment.cgi?id=62018 winepulse: Fix up recording
Can you apply this patch on top of the wine-staging patches and see if it helps?
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #8 from ykui yumekuineru@hotmail.com --- Created attachment 62020 --> https://bugs.winehq.org/attachment.cgi?id=62020 dlls/winepulse.drv/mmdevdrv.c.rej
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #9 from ykui yumekuineru@hotmail.com --- (In reply to Andrew Eikum from comment #7)
Created attachment 62018 [details] winepulse: Fix up recording
Can you apply this patch on top of the wine-staging patches and see if it helps?
I have not been able to apply it to the most recent versions of wine and staging (3.13, 2f3ba1f). (using portage) I attempted both separately adding it to /etc/portage/patches, and as winepulse-PulseAudio_Support/0008-winepulsecustom.patch (+ adding to patchinstall.sh)
It fails with this in both cases: 1 out of 2 hunks FAILED -- saving rejects to file dlls/winepulse.drv/mmdevdrv.c.rej
the fact that it fails as soon as it tries to apply 0008- in the second case right after applying the other PulseAudio ones makes me less confident it is an issue with my build environment though it may still be.
(I attached the file in the comment above)
https://bugs.winehq.org/show_bug.cgi?id=45589
Andrew Eikum aeikum@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #62018|0 |1 is obsolete| |
--- Comment #10 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 62021 --> https://bugs.winehq.org/attachment.cgi?id=62021 winepulse: Fix up recording
I'm sorry, that was my fault. Try this version.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #11 from ykui yumekuineru@hotmail.com --- Created attachment 62022 --> https://bugs.winehq.org/attachment.cgi?id=62022 tail of wine output (same channels), froze in last 3 seconds or so
Still freezes for me, unfortunately.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #12 from ykui yumekuineru@hotmail.com --- I removed the (currently unused) pulseaudio sink (by killing pulseaudio and having it start up again) and so far the game has not frozen. I will keep it running for a while.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #13 from Andrew Eikum aeikum@codeweavers.com --- Yeah, you can see the freeze in the log. dsound is waiting for a signal from winepulse that it never gets:
99253.592:0160:warn:dsound:DSOUND_mixthread wait returned 00000102!
The last traces we see from winepulse are:
99253.545:0162:trace:pulse:pulse_timer_cb got now: ce145e6, last time: ce11f3a 99253.545:0162:trace:pulse:pulse_read Readable total: 102, fragsize: 256
This shows the problem, there should be one more "after update" trace, like there is in this chunk before that one:
99253.535:0162:trace:pulse:pulse_timer_cb got now: ce11d98, last time: ce0f82a 99253.535:0162:trace:pulse:pulse_read Readable total: 316, fragsize: 256 99253.535:0162:trace:pulse:pulse_timer_cb 0xe187f18 after update, adv usec: 9582, held: 160, delay: 10
But that trace never comes. It's stuck in pulse_read() somehow.
The patch you tried cleaned up the logic in pulse_read() and fixed a potential integer underflow that could cause an effectively infinite loop, but apparently that wasn't enough to fix it.
Are you capable of adding some traces in pulse_read() to see where it is getting stuck?
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #14 from ykui yumekuineru@hotmail.com --- (In reply to Andrew Eikum from comment #13)
Are you capable of adding some traces in pulse_read() to see where it is getting stuck?
afraid not
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #15 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 62023 --> https://bugs.winehq.org/attachment.cgi?id=62023 add debug traces
OK, no problem. Try applying this on top of wine-staging and the patch already in here. It contains a small behavior tweak and a bunch more traces that might help us track this down.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #16 from ykui yumekuineru@hotmail.com --- (In reply to Andrew Eikum from comment #15)
Created attachment 62023 [details] add debug traces
OK, no problem. Try applying this on top of wine-staging and the patch already in here. It contains a small behavior tweak and a bunch more traces that might help us track this down.
I have not been able to reproduce it most recently. It is likely the earlier patch (prior to the traces) did fix the issue but I had a stale wine process that I ended up rerunning the game with instead of the updated one so if that really is the case I apologize.
I will keep it running to see if I run into the issue again.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #17 from Andrew Eikum aeikum@codeweavers.com --- (In reply to ykui from comment #16)
(In reply to Andrew Eikum from comment #15)
Created attachment 62023 [details] add debug traces
OK, no problem. Try applying this on top of wine-staging and the patch already in here. It contains a small behavior tweak and a bunch more traces that might help us track this down.
I have not been able to reproduce it most recently. It is likely the earlier patch (prior to the traces) did fix the issue but I had a stale wine process that I ended up rerunning the game with instead of the updated one so if that really is the case I apologize.
I will keep it running to see if I run into the issue again.
Great, sounds like we're on the right track. It could also be the very latest patch ("add debug traces"), which had a little fix embedded in it. You could try removing it and reproducing again to confirm.
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #18 from ykui yumekuineru@hotmail.com --- I was able to reproduce it without the trace-patch (I had another application running at the time that was using the created pulseaudio sink). So far no breakage with both patches.
https://bugs.winehq.org/show_bug.cgi?id=45589
Andrew Eikum aeikum@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #62021|0 |1 is obsolete| | Attachment #62023|0 |1 is obsolete| |
--- Comment #19 from Andrew Eikum aeikum@codeweavers.com --- Created attachment 62026 --> https://bugs.winehq.org/attachment.cgi?id=62026 winepulse: Fix up recording
Here's a cleaned up patch. I'll ask the wine-staging folks to squash it in. Thanks for reporting and testing this!
https://bugs.winehq.org/show_bug.cgi?id=45589
--- Comment #20 from ykui yumekuineru@hotmail.com --- thanks
No issues on af0347a0f24cb06a9d9c251c30b65dae7849491e so far
https://bugs.winehq.org/show_bug.cgi?id=45589
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|UNCONFIRMED |RESOLVED Fixed by SHA1| |ec218012c3372f192b5e371e9a8 | |1bcddc9f73371
--- Comment #21 from Gijs Vermeulen gijsvrm@gmail.com --- Marking as FIXED.
https://bugs.winehq.org/show_bug.cgi?id=45589
Alistair Leslie-Hughes leslie_alistair@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #22 from Alistair Leslie-Hughes leslie_alistair@hotmail.com --- Closing Fixed Staging 3.14