Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752231Ab3EOVdD (ORCPT ); Wed, 15 May 2013 17:33:03 -0400 Received: from gate.crashing.org ([63.228.1.57]:33001 "EHLO gate.crashing.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751530Ab3EOVdA (ORCPT ); Wed, 15 May 2013 17:33:00 -0400 Message-ID: <1368653557.9603.21.camel@pasglop> Subject: Re: [PATCH v2, part 1 3/9] PCI: Convert alloc_pci_dev(void) to pci_alloc_dev(bus) instead From: Benjamin Herrenschmidt To: Yinghai Lu Cc: Liu Jiang , "Rafael J . Wysocki" , linuxppc-dev@lists.ozlabs.org, "sparclinux@vger.kernel.org" , "David S. Miller" , Gu Zheng , Bjorn Helgaas , Greg Kroah-Hartman , Myron Stowe , "linux-pci@vger.kernel.org" , Linux Kernel Mailing List , Paul Mackerras Date: Thu, 16 May 2013 07:32:37 +1000 In-Reply-To: References: <1368461313-4371-1-git-send-email-jiang.liu@huawei.com> <1368461313-4371-4-git-send-email-jiang.liu@huawei.com> <5191F53E.4000305@cn.fujitsu.com> <51925136.5050302@gmail.com> <51926CF6.1050706@gmail.com> <51939E16.9090105@gmail.com> <51939FB1.20203@gmail.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.6.4-0ubuntu1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1061 Lines: 40 On Wed, 2013-05-15 at 07:58 -0700, Yinghai Lu wrote: > Ben, > > in drivers/pci/probe.c::pci_scan_device() there is > > pci_set_of_node(dev); > > if (pci_setup_device(dev)) { > kfree(dev); > return NULL; > } > > so if pci_setup_device fails, there is one dev reference is not release. > > please check you can just move down pci_set_of_node down after that > failing path, like > > > if (pci_setup_device(dev)) { > kfree(dev); > return NULL; > } > > pci_set_of_node(dev); No, we want the OF node set when we run the quirks, we intentionally do that early, the right thing to do is to to call pci_release_of_node() in the error path (it's safe to call even if the node is NULL). Cheers, Ben. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/