Messages in this thread | | | Subject | Re: [PATCH v4 5/9] usb: dwc3: core: make dual-role work with OTG irq | From | Roger Quadros <> | Date | Tue, 15 Sep 2015 17:46:26 +0300 |
| |
On 06/09/15 05:20, Peter Chen wrote: > On Wed, Sep 02, 2015 at 09:43:38AM -0500, Felipe Balbi wrote: >> Hi, >> >>> + >>> +static irqreturn_t dwc3_otg_irq(int irq, void *_dwc) >>> +{ >>> + struct dwc3 *dwc = _dwc; >>> + irqreturn_t ret = IRQ_NONE; >>> + u32 reg; >>> + >>> + spin_lock(&dwc->lock); >> >> this seems unnecessary, we're already in hardirq with IRQs disabled. >> What sort of race could we have ? (in fact, this also needs change in >> dwc3/gadget.c). >> > > Is it possible the kernel process is accessing the content you will > access? > When kernel process accesses the data we'll never reach here as we're protecting it with spinlock_irqsave(), spinunlock_irqrestore().
cheers, -roger
| |