Update of /cvsroot/alsa/alsa-kernel/core In directory usw-pr-cvs1:/tmp/cvs-serv2880
Modified Files: control.c Log Message: Fixed spinlock problems discovered by Andrew Morton <[EMAIL PROTECTED]> Index: control.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/core/control.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- control.c 13 Aug 2002 16:13:34 -0000 1.14 +++ control.c 29 Sep 2002 15:49:04 -0000 1.15 @@ -160,7 +160,7 @@ goto _found; } } - ev = snd_kcalloc(sizeof(*ev), in_interrupt() ? GFP_ATOMIC : GFP_KERNEL); + ev = snd_kcalloc(sizeof(*ev), GFP_ATOMIC); if (ev) { ev->id = *id; ev->mask = mask; @@ -486,12 +486,15 @@ } read_unlock(&card->control_owner_lock); if (result > 0) { - result = 0; + read_unlock(&card->control_rwlock); snd_ctl_notify(card, SNDRV_CTL_EVENT_MASK_VALUE, &kctl->id); + result = 0; + goto __unlocked; } } } read_unlock(&card->control_rwlock); + __unlocked: if (result >= 0) if (copy_to_user(_control, &control, sizeof(control))) return -EFAULT; ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ Alsa-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-cvslog