View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000626 | OpenMPT | General | public | 2014-12-29 10:23 | 2015-01-23 15:54 |
Reporter | 404notfound | Assigned To | Saga Musix | ||
Priority | normal | Severity | crash | Reproducibility | sometimes |
Status | resolved | Resolution | fixed | ||
Platform | x86 | OS | Windows | OS Version | XP |
Product Version | OpenMPT 1.24.01.* (old testing) | ||||
Target Version | OpenMPT 1.24.02.00 / libopenmpt 0.2-beta10 (upgrade first) | Fixed in Version | OpenMPT 1.24.02.00 / libopenmpt 0.2-beta10 (upgrade first) | ||
Summary | 0000626: Mistery crash | ||||
Description | I leave Archon - SextyFour running in background and mpt locks up, looping whatever is in the sound buffer. This happened twice. First time, I screencapped error window and took a .dmp. Attached are the .dmp, screencap, and the tune(just in case). OpenMPT 1.24.01.01-r4670 32 bit TEST | ||||
Additional Information | I suspect this might be related to my shitty sound hardware/driver that was the actual source of trouble in report https://bugs.openmpt.org/view.php?id=576 | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
Has the bug occurred in previous versions? | |||||
Tested code revision (in case you know it) | |||||
I have no idea what's going wrong here. I added code that might aid debugging this to the current test versions. |
|
https://dl.dropboxusercontent.com/u/16644842/mpt/2015-01-01%2000.40.31.zip |
|
Has the error message displayed in the last crash you posted actually been the same as in the screenshot which you originally posted (i.e. "ASSERT(false) failed in [SoundDevice::CAudioThread::Deactivate]" or was it something different? |
|
The last crash didn't produce an error dialog, unlike first. It wrote dmp and log, opened the dump folder and closed app completely. Or maybe I missed something... |
|
https://dl.dropboxusercontent.com/u/16644842/mpt/2015-01-03%2013.49.17.zip https://dl.dropboxusercontent.com/u/16644842/mpt/2015-01-03%2013.59.47.zip |
|
So, it looks like I got mislead by the first error message which seemed to indicate problems with the sound device. The last two error messages you posted dont look like that. OpenMPT trying to shut down the sound device during a crash had originally just caused another crash. |
|
I downloaded latest mptrack.exe and I still get r4696 |
|
Oops, looks like our automation scripts got confused. Until I figure out what's wrong there, more current builds are available at http://buildbot.openmpt.org/builds/auto/openmpt-win32/ . It's just the -latest alias that is broken currently. |
|
The -latest builds are now updated correctly again. |
|
The bug senses our attempt to locate it in r4700 and won't come out to play anymore. Maybe if I write this, MPT will crash just to spite me. |
|
I'll leave a bunch of instances running overnight, playing song, for the hell of it. |
|
Almost 8 hours in and the 10 instances running have done nothing crashy. I shall go to bed and see next day. But I doubt results will be any different. But hey, who knows, Maybe the mystery crash decided to fix itself. |
|
Nope. |
|
Caught a stop of playback with frozen VU meters, but app didn't crash and it didn't produce anything :<. EDIT: I have a feeling this has replaced previous crashing. EDIT: |
|
Sorry for following up late on this one. OK, to the crash itself. It looks like this is a crash in the mixing code.
which really does not tell much at all on its own. I have not been able to reproduce this with a VisualStudio build myself at all. However, openmpt123 built with clang address sanitizer gives the following:
manx@idefix ~/projects/openmpt/trunk-tmp $ bin/openmpt123 --quiet --filter 8 /home/manx/VirtualBox\ VMs/shared/archon_-_sextyfour.mod ALSA lib pcm_dsnoop.c:618:(snd_pcm_dsnoop_open) unable to open slave ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe ALSA lib pcm.c:2239:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side bt_audio_service_open: connect() failed: Connection refused (111) bt_audio_service_open: connect() failed: Connection refused (111) bt_audio_service_open: connect() failed: Connection refused (111) bt_audio_service_open: connect() failed: Connection refused (111) ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jack server is not running or cannot be started ==15186==ERROR: AddressSanitizer: heap-use-after-free on address 0x60800000b645 at pc 0x7f1d3d535690 bp 0x7fff18f32cd0 sp 0x7fff18f32cc8 0x60800000b645 is located 37 bytes inside of 88-byte region [0x60800000b620,0x60800000b678) previously allocated by thread T0 here: Thread T6 (threaded-ml) created by T0 here: SUMMARY: AddressSanitizer: heap-use-after-free /home/manx/projects/openmpt/trunk-tmp/soundlib/IntMixer.h:112 OpenMPT::PolyphaseInterpolation<OpenMPT::IntToIntTraits<2, 1, int, signed char, 16ul> >::operator()(int (&) [2], signed char const*, int) The time during playback when this happens varies. It happened so far for all interpolation types except "none". I currently do not think the use-after-free itself is particularly conclusive. Without having investigated any further, I'd guess that the mixer is trying to read a sample out of bounds for some reason, and at that address, memory had been allocated before. |
|
I think I recently discovered the same crash with MSVC; when adding thousands of modules to Mod Library, it crashed mid-way on one module in the mixer, but I couldn't reproduce it with that module. Since it's random, I don't really think that the problem is in the mixer itself, since rendering is absolutely identical every time (at least for MOD, where you have no random volume and panning factors). |
|
Ok, i think i found the problem and fixed it in r4728. |
|
Yup, the new implementation looks good to me. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2014-12-29 10:23 | 404notfound | New Issue | |
2014-12-29 10:23 | 404notfound | File Added: crash.zip | |
2014-12-30 10:54 | manx | Assigned To | => manx |
2014-12-30 10:54 | manx | Status | new => assigned |
2014-12-30 11:06 | manx | Note Added: 0001891 | |
2014-12-30 11:06 | manx | Status | assigned => feedback |
2014-12-31 22:45 | 404notfound | Note Added: 0001893 | |
2014-12-31 22:45 | 404notfound | Status | feedback => assigned |
2015-01-02 10:08 | manx | Note Added: 0001894 | |
2015-01-02 10:08 | manx | Status | assigned => feedback |
2015-01-02 18:01 | 404notfound | Note Added: 0001895 | |
2015-01-02 18:01 | 404notfound | Status | feedback => assigned |
2015-01-03 11:57 | 404notfound | Note Added: 0001896 | |
2015-01-03 12:04 | 404notfound | Note Edited: 0001896 | |
2015-01-03 12:04 | 404notfound | Note Edited: 0001896 | |
2015-01-04 09:43 | manx | Note Added: 0001897 | |
2015-01-04 09:43 | manx | Status | assigned => feedback |
2015-01-04 12:36 | 404notfound | Note Added: 0001898 | |
2015-01-04 12:36 | 404notfound | Status | feedback => assigned |
2015-01-04 12:57 | manx | Note Added: 0001899 | |
2015-01-04 12:57 | manx | Status | assigned => feedback |
2015-01-04 13:33 | manx | Note Added: 0001900 | |
2015-01-04 17:28 | 404notfound | Note Added: 0001901 | |
2015-01-04 17:28 | 404notfound | Status | feedback => assigned |
2015-01-04 17:45 | 404notfound | Note Added: 0001902 | |
2015-01-05 01:31 | 404notfound | Note Added: 0001904 | |
2015-01-05 08:01 | 404notfound | Note Added: 0001905 | |
2015-01-05 10:39 | 404notfound | Note Added: 0001906 | |
2015-01-05 13:52 | 404notfound | Note Edited: 0001906 | |
2015-01-05 13:54 | 404notfound | Note Edited: 0001906 | |
2015-01-05 14:00 | 404notfound | Note Edited: 0001906 | |
2015-01-22 13:09 | manx | Note Added: 0001940 | |
2015-01-22 16:03 | Saga Musix | Note Added: 0001941 | |
2015-01-22 16:04 | Saga Musix | Note Edited: 0001941 | |
2015-01-23 10:56 | manx | Note Added: 0001942 | |
2015-01-23 10:56 | manx | Assigned To | manx => Saga Musix |
2015-01-23 15:54 | Saga Musix | Note Added: 0001943 | |
2015-01-23 15:54 | Saga Musix | Status | assigned => resolved |
2015-01-23 15:54 | Saga Musix | Resolution | open => fixed |
2015-01-23 15:54 | Saga Musix | Fixed in Version | => OpenMPT 1.24.02.00 / libopenmpt 0.2-beta10 (upgrade first) |
2015-01-23 15:54 | Saga Musix | Target Version | => OpenMPT 1.24.02.00 / libopenmpt 0.2-beta10 (upgrade first) |