[Bug 27901] New: Reproducible crash (and audio popping) in snd_pcm_area_copy [regression] [bisected]

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Jul 26 00:53:53 CDT 2011


http://bugs.winehq.org/show_bug.cgi?id=27901

           Summary: Reproducible crash (and audio popping) in
                    snd_pcm_area_copy [regression] [bisected]
           Product: Wine
           Version: 1.3.25
          Platform: x86-64
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: winmm&mci
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: bz-wine at kdzbn.homelinux.net
                CC: aeikum at codeweavers.com


Created an attachment (id=35694)
 --> (http://bugs.winehq.org/attachment.cgi?id=35694)
Failing test run, including stacktrace

(FWIW I also hear this audio popping, and see this crash, in Unreal Gold,
although that's going to be hard to find to test with.  The crash goes away if
I use directsound (presumably the non-directsound config uses winmm, though I
don't know for sure; it's only UseDirectSound=True or False) in the Unreal
config.  But with directsound, I get no audio at all; I'll go debug that one
next.  Luckily, the same issues show up in the winmm tests.)

The winmm regtest crashes ever since the mmdevapi rewrite change (either
901af51ea32f2d192a598808abab2d1b6a940773 or
be158e48ad8ee556941bd3f1ff94ca7116680d00 was the change that caused the
breakage to start; in between those two, the dlls/winmm/tests/wave.c test
refuses to run).  It also outputs a lot of audio popping before the crash in
some modes, see below.

This test runs several iterations of the 440Hz tone.  The first (reference)
tone runs fine.  The CALLBACK_FUNCTION and CALLBACK_THREAD runs also work fine.
 Then the "10 headers" / CALLBACK_EVENT run is full of pops (approximately ten
of them; looks like one per header).  The "5 headers" / "1 loop" /
CALLBACK_EVENT run is also full of pops, though I didn't count how many.  (It's
in the neighborhood of 10, though.)  Then the 1-second 1-header test runs, with
all three callback flags, and each run works fine (no popping).

Then the 1-second 10-header CALLBACK_EVENT run starts; this one crashes almost
immediately (though it does get a tiny bit of sound out the speaker first).

The tests were all run like this, starting with the .wine-test2 directory not
present:

WINEPREFIX=$HOME/.wine-test2 WINETEST_INTERACTIVE=1 ../../../tools/runtest -P
wine -M winmm.dll -T ../../.. -p winmm_test.exe.so wave.c

The full test log (from a git tree as of the 1.3.25 release) is attached,
though note that I had to ctrl-c the test program at the end.  I did let it run
for a few minutes after the crash and before sending the ctrl-c, though.

This system is LFS from a few years ago (and a couple local changes as well to
get multilib).  Versions of any package are available upon request, though
everything is from source.  Packages that I think are important:

gcc-4.4.1
glibc-2.10.1
linux-2.6.39.3 (I have kept the kernel up to date)
alsa-{lib,utils}-1.0.21

Sound device info (from "lspci -v", as root):

00:08.0 Multimedia audio controller: ALi Corporation M5455 PCI AC-Link
Controller Audio Device (rev 20)
        Subsystem: ASRock Incorporation ASRock 939Dual-SATA2 Motherboard
        Flags: bus master, medium devsel, latency 96, IRQ 18
        I/O ports at e800 [size=256]
        Memory at febff000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [40] Power Management version 2
        Kernel driver in use: Intel ICH
        Kernel modules: snd-intel8x0

(This is using ALSA, not OSSv4.  "WINEPREFIX=$HOME/.wine-test2 ./wine winecfg"
from the top-level directory shows that ALSA is the only system available; it's
also selected.)

The CPU is a dual-core Athlon64, and although the kernel was built in 64-bit
mode and most of userspace is 64-bit, wine is built in 32-bit mode (USE_ARCH=32
CC="gcc -m32" CXX="g++ -m32" ./configure --prefix=/usr/local --disable-win64),
and I have 32-bit versions of most libraries built and installed (which get
activated based on a wrapper script around their xxxxxx-config scripts when
present, and the USE_ARCH environment variable above).

For any other system info that may be needed, just ask.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list