* Kenji Kaneshige <kaneshige.kenji@xxxxxxxxxxxxxx>: > Alex Chiang wrote: > > diff --git a/drivers/acpi/pci_slot.c b/drivers/acpi/pci_slot.c > > index cd1f446..c7ad9f2 100644 > > --- a/drivers/acpi/pci_slot.c > > +++ b/drivers/acpi/pci_slot.c > > @@ -63,6 +63,7 @@ struct acpi_pci_slot { > > acpi_handle root_handle; /* handle of the root bridge */ > > struct pci_slot *pci_slot; /* corresponding pci_slot */ > > struct list_head list; /* node in the list of slots */ > > + struct pci_bus *bus; /* bus the slot is on */ > > }; > > I don't think we need an additional 'bus' field in the struct > acpi_pci_slot. At the register_slot(), we already know the > address of struct pci_bus. At the acpi_pci_slot_remove(), I > think we can get the address of struct pci_bus as follows. > > if (slot->root_handle == handle) { > struct pci_bus *pbus = slot->pci_slot->bus; > list_del(&slot->list); > pci_destroy_slot(slot->pci_slot); > put_device(&pbus->dev); > kfree(slot); > } Ok, that is a little cleaner, I'll do it your way. Thanks for the review. /ac -- 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