Re: Midi issue with 1.0.12 and ice1712

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Fri, 27 Oct 2006 11:23:30 +0200,
Clemens Ladisch wrote:
> 
> Takashi Iwai wrote:
> > [...]
> > Yes, there is a known ABBA deadlock between rtc and snd-timer.
> > At least, we need to remove a spinlock in rtc.c.
> > 
> > -       spin_lock_irqsave(&rtc_task_lock, flags);
> >         if (rtc_callback != task) {
> > -               spin_unlock_irqrestore(&rtc_task_lock, flags);
> >                 return -ENXIO;
> >         }
> > -       spin_unlock_irqrestore(&rtc_task_lock, flags);
> 
> This lock is needed to protect rtc_callback against concurrent accesses
> from other clients.

Well, this isn't useful for protecting from other clients.
rtc_control() is supposed to be called only from the client that
already registered.  In other case, it's simply a bug, and should be
rather warned.

> I've committed a patch that just moves the code out of the RTC callback
> into a tasklet.  Besides being 'proper' kernel programming technique,
> this also works with earlier kernels.

This looks like a good solution.  I'll check whether still deadlock
occurs.


thanks,

Takashi

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user

[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux