[squeak-dev] Building (Linux) VM - with segfaults. that point to audio

José Luis Redrejo jredrejo at gmail.com
Tue Nov 18 15:29:57 UTC 2008


Brad, a silly question: are you using a 64 bits linux? I'm asking because
your symptoms are exactly as those of
http://bugs.squeak.org/view.php?id=7103

Regards
José L.


2008/11/18 Derek O'Connell <doconnel at gmail.com>

> Hi Brad,
>
> "playLoop" is used with a semaphore if
> SoundPlayer>>primSoundStartBufferSize:rate:stereo:semaIndex: returns without
> error. Otherwise "oldStylePlayLoop" is used with a delay instead of the
> semaphore. Without debug info I cannot say for certain what the problem is
> but you might want to change
> SoundPlayer>>primSoundStartBufferSize:rate:stereo:semaIndex: so it skips the
> actual call to the primitive, which will force the use of the
> oldStylePlayloop, and see if this gets you any where.
>
> Put some printf() statements in the C-code for quick debug info or see if
> there is "strace" for your platform. If you intend to do more coding at this
> level then gdb will probably save you a lot time in future.
>
> HTH
>
> DMOC
>
>
> Brad Fuller wrote:
>
>> I'm not any further, but this is what I've found:
>>
>> I seem to get the segfault it SoundPlayer>>playLoop at:
>>
>>                        self primSoundPlaySamples: count from: Buffer
>> startingAt: 1.
>>
>> But, I don\' know really where to go from here. I checked out
>> SoundPlugin and sqUnixSoundALSA.c
>> and they both have the function:
>>
>>  int snd_PlaySamplesFromAtLength(int frameCount, int arrayIndex, int
>> startIndex)
>>
>> which I assume is what is being called from Squeak.
>>
>> When I run 'configure', the audio section that is sent to the terminal
>> looks correct:
>>
>> checking for Advanced Linux Sound Architecture... yes
>> checking for Mac OS X CoreAudio... no
>> ******** disabling vm-sound-MacOSX
>> checking for Network Audio System... no
>> ******** disabling vm-sound-NAS
>> checking for Advanced Linux Sound Architecture... yes
>> checking for SunOS/Solaris audio... no
>> ******** disabling vm-sound-Sun
>> checking for custom sound support... no
>> ******** disabling vm-sound-custom
>>
>> (don't know why ALSA is mentioned twice, though.)
>>
>> Here's the segfault again:
>>
>> Segmentation fault
>>
>> 20547312 [] in >playLoop
>> 20547404 [] in Semaphore>critical:
>> 20547220 BlockContext>ensure:
>> 20547128 Semaphore>critical:
>> 20515212 >playLoop
>> 20515028 [] in >startPlayerProcessBufferSize:rate:stereo:sound:
>> 20515120 [] in BlockContext>newProcess
>> Aborted
>>
>> BTW, it didn't matter when I changed the sample rate to 44100, still
>> had the segfault.
>>
>> I don't know where to turn from here, short of compiling with debug
>> flag on and starting up gdb.
>> Any ideas much appreciated. If someone knows the architecture of what
>> happens when the primitive is called and what should happen in the
>> ALSA plugin code that could be helpful.
>>
>> thanks for reading!
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20081118/042222cf/attachment.htm


More information about the Squeak-dev mailing list