Re: [PATCH] usb: gadget: bcm63xx UDC driver

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

 



On Mon, Aug 20, 2012 at 08:48:11PM -0700, Kevin Cernekee wrote:
> On Mon, Aug 20, 2012 at 12:40 AM, Felipe Balbi <balbi@xxxxxx> wrote:
> > no workqueues, please either handle the IRQ here or use threaded_irqs.
> >
> > again, no workqueues.
> 
> Felipe,
> 
> I am seeing all sorts of deadlocks now, after removing the workqueue
> (patch V2).  Some have easy fixes, but for others it is not as
> obvious.  The code was much simpler when I could just trigger a
> deferred worker function.
> 
> Workqueues are used in at91_udc, lpc32xx_udc, mv_udc_core, and
> pch_udc.  Could you please clarify why it is not OK to use one in
> bcm63xx_udc?

Because threaded_irqs were added in order to drop such workqueues.
threaded_irqs also have the highest priority possible (only lower than
hardirq handlers), so you'll get scheduled much sooner.

Could it be that most of your deadlocks is because you're not setting
IRQF_ONESHOT ?

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux