Re: [PATCH 5/5] opticon: Fix resume logic

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

 



On Tue, 6 Oct 2009, Alan Cox wrote:

> On Tue, 6 Oct 2009 23:12:17 +0200
> Oliver Neukum <oliver@xxxxxxxxxx> wrote:
> 
> > Am Dienstag, 6. Oktober 2009 17:06:57 schrieb Alan Cox:
> > > Opticon now takes the right mutex to check the port status but the status
> > > check is done wrongly for the modern serial code, so fix it.
> > 
> > As Alan Stern noticed, it seems like we have an ab-ba deadlock here
> > between open and resume regarding pm_mutex and port->mutex.

Johan pointed out that I was mistaken in saying the pm_mutex is
acquired during open.  It actually is acquired in serial_install() and
serial_cleanup(), which are called without the port mutex.  So I guess
we're okay after all.

In the general case, that is.  Specific drivers may still run into
trouble.  For example, option_open() and sierra_open() do acquire the 
pm_mutex.

> Oh well I guess someone with hardware will have to fix that.
> 
> Do we actually need a separate pm_mutex anyway ?

In principle we don't, and Rafael Wysocki's new runtime PM framework
doesn't use one.  However the current USB runtime PM framework does, so
until we switch over (hopefully in time for 2.6.33) it's important to
watch out for this sort of conflict.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux