Comment 22 for bug 212960

Revision history for this message
Stefan Bader (smb) wrote :

Hi Frank,

the change I would like to try has to do with the way lum is build. We have an updated version of the ALSA driver but the cx88 sound module was not build with these headers. We already had another cse where this lead to corruption because a driver used a layout of ALSA struct that did not match the ones of the driver.

This might be an explanation to why the crash happens when modifying list. Why it works with locking is not completely clear to me. Especially since I cannot really understand how this works. If I look at the backtrace you povided, it starts somewhere with dev_register_all (which takes the mutex while going through the list) and then (while in that function) calls pcm_dev_register which wants to add a new timer device by calling snd_device_new. This also tries to get the mutex and I think this is just a dead lock situation.

But anyways. I attach the patch I did and maybe you can try that, just to rule out that it isn't again this structure mismatch.