Currently we're pci_dev_get/put()-ing pci device on every kobject creation/removal. It's useless per se - the kobject is part of the device itself, so it should be removed when there are no users of the pdev, and is not a user of it. CC: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> CC: Neil Horman <nhorman@xxxxxxxxxxxxx> CC: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> CC: linux-pci@xxxxxxxxxxxxxxx CC: linux-kernel@xxxxxxxxxxxxxxx Signed-off-by: Veaceslav Falico <vfalico@xxxxxxxxxx> --- drivers/pci/msi.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c index 5d70f49..0771508 100644 --- a/drivers/pci/msi.c +++ b/drivers/pci/msi.c @@ -511,7 +511,6 @@ static void msi_kobj_release(struct kobject *kobj) { struct msi_desc *entry = to_msi_desc(kobj); - pci_dev_put(entry->dev); kfree(entry); } @@ -534,13 +533,10 @@ static int populate_msi_sysfs(struct pci_dev *pdev) list_for_each_entry(entry, &pdev->msi_list, list) { kobj = &entry->kobj; kobj->kset = pdev->msi_kset; - pci_dev_get(pdev); ret = kobject_init_and_add(kobj, &msi_irq_ktype, NULL, "%u", entry->irq); - if (ret) { - pci_dev_put(pdev); + if (ret) return ret; - } } return 0; -- 1.8.4 -- 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