Re: [PATCH/RFC] usb: fix renesas_usbhs to not schedule in atomic context

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

 



Hi,

On Mon, Feb 06, 2012 at 11:11:45AM +0100, Guennadi Liakhovetski wrote:
> Hi Felipe
> 
> On Sun, 5 Feb 2012, Felipe Balbi wrote:
> 
> > Hi,
> > 
> > On Fri, Feb 03, 2012 at 04:43:20PM +0100, Guennadi Liakhovetski wrote:
> > > The current renesas_usbhs driver triggers
> > > 
> > > BUG: scheduling while atomic: ksoftirqd/0/3/0x00000102
> > > 
> > > with enabled CONFIG_DEBUG_ATOMIC_SLEEP, by submitting DMA transfers from 
> > > an atomic (tasklet) context, which is not supported by the shdma dmaengine 
> > > driver. Fix it by switching to a work. Also simplify some list 
> > > manipulations.
> > 
> > you are doing much more than what you say.
> 
> Are those two list macro changes what you refer to as "a lot?" ;-) You're 
> right in principle, they are not directly related to the purpose of this 
> patch, they are just something that occurred to me, while tracking down 
> DMA packets. But yes, it can be extracted to a separate cosmetic patch...

please do so ;-)

> > Also, instead of using a
> > workqueue, have you considered using threaded_irqs ?
> > 
> > (I didn't go over the driver again to see if it makes sense to use
> > threaded_irqs in this case, but doesn't hurt asking)
> 
> From a first glance these tasklets are not directly enough related to 
> IRQs, so, doing that is either impossible, or would require a _much_ 
> deeper change to the driver and _this_ would indeed be a much bigger 
> change than just fixing the Oops.

I see.. so please just split the list changes to separate patch and
resend.

-- 
balbi

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux