From: Jiang Liu <liuj97@gmail.com>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
Jiang Liu <jiang.liu@huawei.com>, Yinghai Lu <yinghai@kernel.org>,
Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>,
Yijing Wang <wangyijing@huawei.com>,
linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
ACPI Devel Maling List <linux-acpi@vger.kernel.org>,
Toshi Kani <toshi.kani@hp.com>,
Myron Stowe <myron.stowe@redhat.com>
Subject: Re: [RFC PATCH v5 3/8] PCI: add a blocking notifier chain for PCI bus addition/removal
Date: Tue, 22 Jan 2013 00:18:55 +0800 [thread overview]
Message-ID: <50FD6A6F.1080408@gmail.com> (raw)
In-Reply-To: <3583141.yG8QGivRYt@vostro.rjw.lan>
On 01/21/2013 07:54 AM, Rafael J. Wysocki wrote:
> On Saturday, January 19, 2013 12:07:41 AM Jiang Liu wrote:
>> When adding/removing a PCI bus, some other components want to be
snip
>> +
>> +void pci_bus_call_notifier(struct pci_bus *bus, unsigned long code)
>> +{
>> + int ret;
>> +
>> + ret = blocking_notifier_call_chain(&pci_bus_notifier_chain,
>> + code, bus);
>> + WARN_ON(ret != NOTIFY_DONE && ret != NOTIFY_OK);
>
> I'm not sure if this is a good idea. WARN_ON() is quite a heavy tool.
Hi Rafael,
How about WARN_ONCE() here?
>
>> +}
>> +
>> void pci_add_resource_offset(struct list_head *resources, struct resource *res,
>> resource_size_t offset)
>> {
>> diff --git a/include/linux/pci.h b/include/linux/pci.h
>> index ee21795..12e5447 100644
>> --- a/include/linux/pci.h
>> +++ b/include/linux/pci.h
>> @@ -1033,6 +1033,18 @@ const struct pci_device_id *pci_match_id(const struct pci_device_id *ids,
>> int pci_scan_bridge(struct pci_bus *bus, struct pci_dev *dev, int max,
>> int pass);
>>
>> +/*
>> + * All notifiers below get called with the target struct pci_bus *bus as
>> + * an argument.
>> + * Note: all PCI bus notifier must return success. Currently there's no
>> + * error handling if any notifier returns error code.
>> + */
>> +#define PCI_NOTIFY_POST_BUS_ADD 0x00000001 /* PCI bus has been added */
>> +#define PCI_NOTIFY_PRE_BUS_DEL 0x00000002 /* PCI bus will be deleted */
>
> I would call them PCI_EVENT_BUS_ADDED and PCI_EVENT_BUS_REMOVE, respectively.
Sure, will use them in next version.
>
>> +
>> +int pci_bus_register_notifier(struct notifier_block *nb);
>> +int pci_bus_unregister_notifier(struct notifier_block *nb);
>> +
>> void pci_walk_bus(struct pci_bus *top, int (*cb)(struct pci_dev *, void *),
>> void *userdata);
>> int pci_cfg_space_size_ext(struct pci_dev *dev);
>
> Apart from the nitpicks above, looks good.
Thanks for review!
Regards!
Gerry
>
> Thanks,
> Rafael
>
>
next prev parent reply other threads:[~2013-01-21 16:19 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-18 16:07 [RFC PATCH v5 0/8] introduce PCI bus notifier chain to get rid of the ACPI PCI subdriver interfaces Jiang Liu
2013-01-18 16:07 ` [RFC PATCH v5 1/8] PCI: make PCI device create/destroy logic symmetric Jiang Liu
2013-01-20 23:35 ` Rafael J. Wysocki
2013-01-18 16:07 ` [RFC PATCH v5 2/8] PCI: split registration of PCI bus devices into two stages Jiang Liu
2013-01-18 16:07 ` [RFC PATCH v5 3/8] PCI: add a blocking notifier chain for PCI bus addition/removal Jiang Liu
2013-01-20 23:54 ` Rafael J. Wysocki
2013-01-21 16:18 ` Jiang Liu [this message]
2013-01-21 22:46 ` Rafael J. Wysocki
2013-01-18 16:07 ` [RFC PATCH v5 4/8] ACPI, PCI: avoid building pci_slot as module Jiang Liu
2013-01-21 0:01 ` Rafael J. Wysocki
2013-01-28 21:09 ` Bjorn Helgaas
2013-01-28 21:29 ` Yinghai Lu
2013-01-28 21:52 ` Bjorn Helgaas
2013-01-28 22:00 ` Yinghai Lu
2013-01-28 22:14 ` Bjorn Helgaas
2013-01-28 22:58 ` Yinghai Lu
2013-01-29 2:07 ` Jiang Liu
2013-01-29 2:07 ` Jiang Liu
2013-01-29 2:21 ` Yinghai Lu
2013-01-29 2:45 ` Jiang Liu
2013-01-29 2:45 ` Jiang Liu
2013-01-29 2:50 ` Bjorn Helgaas
2013-01-29 4:36 ` Matthew Garrett
2013-01-29 4:36 ` Matthew Garrett
2013-01-29 1:00 ` Rafael J. Wysocki
2013-02-03 20:18 ` Rafael J. Wysocki
2013-02-03 20:58 ` Bjorn Helgaas
2013-02-03 22:47 ` Myron Stowe
2013-02-03 23:38 ` Rafael J. Wysocki
2013-01-18 16:07 ` [RFC PATCH v5 5/8] PCI, ACPI: hook PCI bus notifications to create/destroy PCI slots Jiang Liu
2013-01-21 0:05 ` Rafael J. Wysocki
2013-01-18 16:07 ` [RFC PATCH v5 6/8] pci_slot: replace printk(KERN_xxx) with pr_xxx() Jiang Liu
2013-01-18 16:07 ` [RFC PATCH v5 7/8] PCI/PCIe: add "pci=nopciehp" to disable PCIe native hotplug Jiang Liu
2013-01-18 17:35 ` Bjorn Helgaas
2013-01-18 17:50 ` Yinghai Lu
2013-01-18 22:08 ` Rafael J. Wysocki
2013-01-22 16:19 ` Jiang Liu
2013-01-18 22:01 ` Rafael J. Wysocki
2013-01-19 1:56 ` Yijing Wang
2013-01-19 14:51 ` Greg Kroah-Hartman
2013-01-19 14:51 ` Greg Kroah-Hartman
2013-01-18 16:07 ` [RFC PATCH v5 8/8] PCI/PCIe: only claim PME from firmware when CONFIG_PCIE_PME is enabled Jiang Liu
2013-01-20 23:43 ` Rafael J. Wysocki
2013-01-21 17:06 ` Jiang Liu
2013-01-28 20:56 ` [RFC PATCH v5 0/8] introduce PCI bus notifier chain to get rid of the ACPI PCI subdriver interfaces Bjorn Helgaas
2013-01-29 0:34 ` Rafael J. Wysocki
2013-01-29 2:04 ` Jiang Liu
2013-01-29 2:04 ` Jiang Liu
2013-02-01 16:13 ` Jiang Liu
2013-02-01 22:52 ` Bjorn Helgaas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50FD6A6F.1080408@gmail.com \
--to=liuj97@gmail.com \
--cc=bhelgaas@google.com \
--cc=gregkh@linuxfoundation.org \
--cc=jiang.liu@huawei.com \
--cc=kaneshige.kenji@jp.fujitsu.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=myron.stowe@redhat.com \
--cc=rjw@sisk.pl \
--cc=toshi.kani@hp.com \
--cc=wangyijing@huawei.com \
--cc=yinghai@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.