Re: [PATCH 1/2] pci: Block config access during BIST

From: Benjamin Herrenschmidt
Date: Fri Nov 19 2004 - 17:50:34 EST


On Fri, 2004-11-19 at 13:32 -0800, Greg KH wrote:
> On Fri, Nov 19, 2004 at 02:23:22PM -0600, brking@xxxxxxxxxx wrote:
> > -static inline int pci_read_config_byte(struct pci_dev *dev, int where, u8 *val)
> > -{
> > - return pci_bus_read_config_byte (dev->bus, dev->devfn, where, val);
> > -}
>
> Well, as much as I despise this patch, you should at least get it
> correct :)
>
> You need to block the pci_bus_* functions too, otherwise the parts of
> the kernel that use them will stomp all over your device, right?

The real issue is how to do the BIST write in fact once locked ... An
option would be to have an "atomic" write BIST & lock device, which
would do the whole operation with the spinlock.

I agree with Greg, the blocking should be done in the bus functions in
drivers/pci/access.c, and the helper that does the BIST thing should use
the low level callback directly within the lock.

Ben.

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