Comment 21 for bug 212960

Revision history for this message
Frank Haverkamp (f-haverkamp) wrote :

Hi Stefan,

for me I think I can say relatively sure that it is a locking problem of the list data structures. I added printouts to to point where the list is modified. Putting the mutex around all spots with list modification helped for me:
+
+ mutex_lock(&register_mutex);
  list_add(&dev->list, &card->devices); /* add to the head of list */
+ mutex_unlock(&register_mutex);
  return 0;

As Tim already said, it might not be the ultimate fix, but I think it is at least in the right direction. Has somebody contact to the alsa developers? If so what do they say?

What is your proposed fix doing? Can you point me at the change e.g. the patch?

Thanks,

Frank