diff options
| author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-06-24 08:41:41 -0400 |
|---|---|---|
| committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-06-24 13:07:53 -0400 |
| commit | 816724e65c72a90a44fbad0ef0b59b186c85fa90 (patch) | |
| tree | 421fa29aedff988e392f92780637553e275d37a0 /drivers/pci/remove.c | |
| parent | 70ac4385a13f78bc478f26d317511893741b05bd (diff) | |
| parent | d384ea691fe4ea8c2dd5b9b8d9042eb181776f18 (diff) | |
Merge branch 'master' of /home/trondmy/kernel/linux-2.6/
Conflicts:
fs/nfs/inode.c
fs/super.c
Fix conflicts between patch 'NFS: Split fs/nfs/inode.c' and patch
'VFS: Permit filesystem to override root dentry on mount'
Diffstat (limited to 'drivers/pci/remove.c')
| -rw-r--r-- | drivers/pci/remove.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/pci/remove.c b/drivers/pci/remove.c index 1a6bf9de166f..99ffbd478b29 100644 --- a/drivers/pci/remove.c +++ b/drivers/pci/remove.c | |||
| @@ -22,18 +22,18 @@ static void pci_destroy_dev(struct pci_dev *dev) | |||
| 22 | pci_proc_detach_device(dev); | 22 | pci_proc_detach_device(dev); |
| 23 | pci_remove_sysfs_dev_files(dev); | 23 | pci_remove_sysfs_dev_files(dev); |
| 24 | device_unregister(&dev->dev); | 24 | device_unregister(&dev->dev); |
| 25 | spin_lock(&pci_bus_lock); | 25 | down_write(&pci_bus_sem); |
| 26 | list_del(&dev->global_list); | 26 | list_del(&dev->global_list); |
| 27 | dev->global_list.next = dev->global_list.prev = NULL; | 27 | dev->global_list.next = dev->global_list.prev = NULL; |
| 28 | spin_unlock(&pci_bus_lock); | 28 | up_write(&pci_bus_sem); |
| 29 | } | 29 | } |
| 30 | 30 | ||
| 31 | /* Remove the device from the device lists, and prevent any further | 31 | /* Remove the device from the device lists, and prevent any further |
| 32 | * list accesses from this device */ | 32 | * list accesses from this device */ |
| 33 | spin_lock(&pci_bus_lock); | 33 | down_write(&pci_bus_sem); |
| 34 | list_del(&dev->bus_list); | 34 | list_del(&dev->bus_list); |
| 35 | dev->bus_list.next = dev->bus_list.prev = NULL; | 35 | dev->bus_list.next = dev->bus_list.prev = NULL; |
| 36 | spin_unlock(&pci_bus_lock); | 36 | up_write(&pci_bus_sem); |
| 37 | 37 | ||
| 38 | pci_free_resources(dev); | 38 | pci_free_resources(dev); |
| 39 | pci_dev_put(dev); | 39 | pci_dev_put(dev); |
| @@ -62,9 +62,9 @@ void pci_remove_bus(struct pci_bus *pci_bus) | |||
| 62 | { | 62 | { |
| 63 | pci_proc_detach_bus(pci_bus); | 63 | pci_proc_detach_bus(pci_bus); |
| 64 | 64 | ||
| 65 | spin_lock(&pci_bus_lock); | 65 | down_write(&pci_bus_sem); |
| 66 | list_del(&pci_bus->node); | 66 | list_del(&pci_bus->node); |
| 67 | spin_unlock(&pci_bus_lock); | 67 | up_write(&pci_bus_sem); |
| 68 | pci_remove_legacy_files(pci_bus); | 68 | pci_remove_legacy_files(pci_bus); |
| 69 | class_device_remove_file(&pci_bus->class_dev, | 69 | class_device_remove_file(&pci_bus->class_dev, |
| 70 | &class_device_attr_cpuaffinity); | 70 | &class_device_attr_cpuaffinity); |
