From patchwork Thu Sep 26 14:11:13 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Veaceslav Falico X-Patchwork-Id: 278201 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id B189F2C00A2 for ; Fri, 27 Sep 2013 00:11:13 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750894Ab3IZOLL (ORCPT ); Thu, 26 Sep 2013 10:11:11 -0400 Received: from mx1.redhat.com ([209.132.183.28]:57259 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751540Ab3IZOLJ (ORCPT ); Thu, 26 Sep 2013 10:11:09 -0400 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r8QEAoIN011506 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 26 Sep 2013 10:10:50 -0400 Received: from darkmag.usersys.redhat.com (dhcp-27-102.brq.redhat.com [10.34.27.102]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r8QEAmkK008125; Thu, 26 Sep 2013 10:10:48 -0400 From: Veaceslav Falico To: linux-pci@vger.kernel.org Cc: Veaceslav Falico , Bjorn Helgaas , Neil Horman , Greg Kroah-Hartman , linux-kernel@vger.kernel.org Subject: [PATCH v2 1/3] pci: remove redundant pci_dev_get/put() on kobject (un)register Date: Thu, 26 Sep 2013 16:11:13 +0200 Message-Id: <1380204675-18238-1-git-send-email-vfalico@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org 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 CC: Neil Horman CC: Greg Kroah-Hartman CC: linux-pci@vger.kernel.org CC: linux-kernel@vger.kernel.org Signed-off-by: Veaceslav Falico Acked-by: Neil Horman --- 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;