Messages in this thread | | | Subject | Re: [PATCH 1/2] pci: Block config access during BIST | From | Benjamin Herrenschmidt <> | Date | Sat, 20 Nov 2004 09:45:09 +1100 |
| |
On Fri, 2004-11-19 at 13:32 -0800, Greg KH wrote: > On Fri, Nov 19, 2004 at 02:23:22PM -0600, brking@us.ibm.com 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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |