Andrew Morton wrote:
Brian King <[EMAIL PROTECTED]> wrote:

+void pci_block_user_cfg_access(struct pci_dev *dev)
+{
+       unsigned long flags;
+
+       pci_save_state(dev);
+       spin_lock_irqsave(&pci_lock, flags);
+       dev->block_ucfg_access = 1;
+       spin_unlock_irqrestore(&pci_lock, flags);


Are you sure the locking in here is meaningful?  All it will really do is
give you a couple of barriers.

Actually, it is meaningful. It synchronizes the blocking of pci config accesses with other pci config accesses that may be going on when this function is called. Without the locking, the API cannot guarantee that no further user initiated PCI config accesses will be initiated after this function is called.

Brian

--
Brian King
eServer Storage I/O
IBM Linux Technology Center
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to