From patchwork Tue May 14 13:00:38 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jiang Liu X-Patchwork-Id: 2565811 X-Patchwork-Delegate: bhelgaas@google.com Return-Path: X-Original-To: patchwork-linux-pci@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id 15694DF24C for ; Tue, 14 May 2013 13:00:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757358Ab3ENNAx (ORCPT ); Tue, 14 May 2013 09:00:53 -0400 Received: from mail-pd0-f176.google.com ([209.85.192.176]:46484 "EHLO mail-pd0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756770Ab3ENNAv (ORCPT ); Tue, 14 May 2013 09:00:51 -0400 Received: by mail-pd0-f176.google.com with SMTP id x10so409357pdj.35 for ; Tue, 14 May 2013 06:00:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:from:to:cc:subject:date:message-id:x-mailer; bh=cjvwckTO3izW2dmm3jUxfXAB86qffZKALUKHt9dKrbw=; b=qTlqWQcl1O2b8geHsSonlcqUoe30Ef5gKM0qjf8EWpHXwn1IDCsCXKmZLPvSu0LCJl xnhzF5dv8r9Wy5xeNAY1xowwh9/tyoMjhgUDmQCiMalmx4nwLn8O+hv4w/8NohH97iGa HmNHNUHIzKYIlUfZSyFgPUElvMteK/1czhHAFzpmeP9NyIXft3ZtxTY4BgYrjdcXsLL1 bYBjyyL3wXQjg2xCQ7Gar/B3w++bWC1c1mtP3KQJsNIVCqwI+j9hee8BVR3+cW61c6Rh t+cHbeL3FbcsLR8G4dysiaSqFRGxUrV0UO01ilr9GNzYTFJ5XhxyNhN6ExDXp9p+UiZA J1Sg== X-Received: by 10.66.252.4 with SMTP id zo4mr34991226pac.100.1368536451214; Tue, 14 May 2013 06:00:51 -0700 (PDT) Received: from localhost.localdomain ([120.196.98.100]) by mx.google.com with ESMTPSA id kr16sm1132887pab.23.2013.05.14.06.00.46 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 14 May 2013 06:00:50 -0700 (PDT) From: Jiang Liu To: "Rafael J . Wysocki" , Bjorn Helgaas , Yinghai Lu Cc: Jiang Liu , Gu Zheng , Toshi Kani , Myron Stowe , Yijing Wang , Jiang Liu , linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, Len Brown , linux-acpi@vger.kernel.org Subject: [PATCH v1 1/2] ACPI, PCI: remove unused global list acpi_pci_roots in pci_root.c Date: Tue, 14 May 2013 21:00:38 +0800 Message-Id: <1368536439-19421-1-git-send-email-jiang.liu@huawei.com> X-Mailer: git-send-email 1.8.1.2 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Now the global list acpi_pci_roots pci_root.c is useless, remove it. Signed-off-by: Jiang Liu Cc: Len Brown Cc: "Rafael J. Wysocki" Cc: linux-acpi@vger.kernel.org Cc: linux-kernel@vger.kernel.org --- drivers/acpi/pci_root.c | 25 +++---------------------- include/acpi/acpi_bus.h | 1 - 2 files changed, 3 insertions(+), 23 deletions(-) diff --git a/drivers/acpi/pci_root.c b/drivers/acpi/pci_root.c index b80e06e..91ddfd6 100644 --- a/drivers/acpi/pci_root.c +++ b/drivers/acpi/pci_root.c @@ -65,10 +65,6 @@ static struct acpi_scan_handler pci_root_handler = { .detach = acpi_pci_root_remove, }; -/* Lock to protect both acpi_pci_roots lists */ -static DEFINE_MUTEX(acpi_pci_root_lock); -static LIST_HEAD(acpi_pci_roots); - static DEFINE_MUTEX(osc_lock); /** @@ -423,7 +419,6 @@ static int acpi_pci_root_add(struct acpi_device *device, } } - INIT_LIST_HEAD(&root->node); root->device = device; root->segment = segment & 0xFFFF; strcpy(acpi_device_name(device), ACPI_PCI_ROOT_DEVICE_NAME); @@ -501,10 +496,6 @@ static int acpi_pci_root_add(struct acpi_device *device, * TBD: Need PCI interface for enumeration/configuration of roots. */ - mutex_lock(&acpi_pci_root_lock); - list_add_tail(&root->node, &acpi_pci_roots); - mutex_unlock(&acpi_pci_root_lock); - /* * Scan the Root Bridge * -------------------- @@ -518,7 +509,7 @@ static int acpi_pci_root_add(struct acpi_device *device, "Bus %04x:%02x not present in PCI namespace\n", root->segment, (unsigned int)root->secondary.start); result = -ENODEV; - goto out_del_root; + goto end; } /* ASPM setting */ @@ -538,20 +529,13 @@ static int acpi_pci_root_add(struct acpi_device *device, if (system_state != SYSTEM_BOOTING) { pcibios_resource_survey_bus(root->bus); pci_assign_unassigned_bus_resources(root->bus); - } - - /* need to after hot-added ioapic is registered */ - if (system_state != SYSTEM_BOOTING) + /* need to after hot-added ioapic is registered */ pci_enable_bridges(root->bus); + } pci_bus_add_devices(root->bus); return 1; -out_del_root: - mutex_lock(&acpi_pci_root_lock); - list_del(&root->node); - mutex_unlock(&acpi_pci_root_lock); - end: kfree(root); return result; @@ -568,9 +552,6 @@ static void acpi_pci_root_remove(struct acpi_device *device) pci_remove_root_bus(root->bus); - mutex_lock(&acpi_pci_root_lock); - list_del(&root->node); - mutex_unlock(&acpi_pci_root_lock); kfree(root); } diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h index 22ba56e..4eb9a88 100644 --- a/include/acpi/acpi_bus.h +++ b/include/acpi/acpi_bus.h @@ -447,7 +447,6 @@ int register_acpi_bus_type(struct acpi_bus_type *); int unregister_acpi_bus_type(struct acpi_bus_type *); struct acpi_pci_root { - struct list_head node; struct acpi_device * device; struct pci_bus *bus; u16 segment;