Re: [PATCH] PCI: Enable Function Level Reset(FLR) for PCI-E

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

 



On Wednesday 24 September 2008 14:01:54 Yang, Sheng wrote:
> On Wednesday 24 September 2008 12:34:30 Matthew Wilcox wrote:
[...]
> > This implementation note also says, "Software that's performing
> > the FLR synchronizes with other software that might potentially access
> > the Function directly, and ensures such accesses do not occur during
> > this algorithm."
> >
> > If we have a shared interrupt and the device being reset still has a
> > handler attached, it's entirely possible that another device will
> > generate an interrupt and cause the interrupt handler for this device to
> > try to access the device during the FLR.
> >
> > We could fix this by temporarily unregistering the interrupt handler for
> > this device, or calling disable_irq().
>
> I think unregister interrupt handler is better, after we set the interrupt
> disable bit in control register.

Oops... Realize if unregister/register irqaction is big enough for another 
patch for generic usage, and another way to check-in. I want to keep the 
thing simple at first, so I'd like to use disable_irq() first and optimize it 
late if necessary, at least FLR won't happen that frequently...

-- 
regards
Yang, Sheng


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

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux