From: Jiang Liu <jiang.liu@linux.intel.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: Joerg Roedel <joro@8bytes.org>,
David Woodhouse <dwmw2@infradead.org>,
Yinghai Lu <yinghai@kernel.org>,
Dan Williams <dan.j.williams@intel.com>,
Vinod Koul <vinod.koul@intel.com>,
"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>,
Len Brown <lenb@kernel.org>, Ashok Raj <ashok.raj@intel.com>,
Yijing Wang <wangyijing@huawei.com>,
Tony Luck <tony.luck@intel.com>,
iommu@lists.linux-foundation.org, linux-pci@vger.kernel.org,
linux-kernel@vger.kernel.org, dmaengine@vger.kernel.org,
linux-acpi@vger.kernel.org
Subject: Re: [Patch Part3 V1 17/22] pci, ACPI, iommu: enhance pci_root to support DMAR device hotplug
Date: Mon, 05 May 2014 16:22:48 +0800 [thread overview]
Message-ID: <53674A58.3050702@linux.intel.com> (raw)
In-Reply-To: <20140424173348.GC29593@google.com>
On 2014/4/25 1:33, Bjorn Helgaas wrote:
> On Tue, Apr 22, 2014 at 03:07:28PM +0800, Jiang Liu wrote:
>> Finally enhance pci_root driver to support DMAR device hotplug when
>> hot-plugging PCI host bridges.
>>
>> Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
>> ---
>> drivers/acpi/pci_root.c | 16 ++++++++++++++--
>> 1 file changed, 14 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/acpi/pci_root.c b/drivers/acpi/pci_root.c
>> index d388f13d48b4..aa8f549869f3 100644
>> --- a/drivers/acpi/pci_root.c
>> +++ b/drivers/acpi/pci_root.c
>> @@ -33,6 +33,7 @@
>> #include <linux/pci.h>
>> #include <linux/pci-acpi.h>
>> #include <linux/pci-aspm.h>
>> +#include <linux/dmar.h>
>> #include <linux/acpi.h>
>> #include <linux/slab.h>
>> #include <acpi/apei.h> /* for acpi_hest_init() */
>> @@ -511,6 +512,7 @@ static int acpi_pci_root_add(struct acpi_device *device,
>> struct acpi_pci_root *root;
>> acpi_handle handle = device->handle;
>> int no_aspm = 0, clear_aspm = 0;
>> + bool hotadd = (system_state != SYSTEM_BOOTING);
>>
>> root = kzalloc(sizeof(struct acpi_pci_root), GFP_KERNEL);
>> if (!root)
>> @@ -557,6 +559,11 @@ static int acpi_pci_root_add(struct acpi_device *device,
>> strcpy(acpi_device_class(device), ACPI_PCI_ROOT_CLASS);
>> device->driver_data = root;
>>
>> + if (hotadd && dmar_device_hotplug(handle, true)) {
>
> Apparently "dmar_device_hotplug(handle, true)" means "add a DMAR device,"
> and "dmar_device_hotplug(device->handle, false)" means "remove a DMAR
> device." I'm not really a fan of interfaces where one of the arguments
> selects between two completely different actions, because it's harder for a
> casual reader to see what's going on.
>
> I see how it simplifies your implementation a little bit, but I think it's
> more important to simplify for the reader.
Thanks Bjorn, I will rename it to dmar_device_add/remove() instead.
>
> Bjorn
>
next prev parent reply other threads:[~2014-05-05 8:22 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-22 7:07 [RFC Patch Part3 V1 00/22] Enable Intel DMAR device hotplug Jiang Liu
[not found] ` <1398150453-28141-1-git-send-email-jiang.liu-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2014-04-22 7:07 ` [Patch Part3 V1 01/22] iommu/vt-d: match segment number when searching for dev_iotlb capable devices Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 02/22] iommu/vt-d: use correct domain id to flush virtual machine domains Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 03/22] iommu/vt-d: introduce helper functions to improve code readability Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 04/22] iommu/vt-d: introduce helper functions to make code symmetric for readability Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 05/22] iommu/vt-d: only dynamically allocate domain id for virtual domains Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 06/22] iommu/vt-d: fix possible invalid memory access caused by free_dmar_iommu() Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 07/22] iommu/vt-d: avoid freeing virtual machine domain in free_dmar_iommu() Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 08/22] iommu/VT-d: simplify include/linux/dmar.h Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 09/22] iommu/vt-d: change iommu_enable/disable_translation to return void Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 10/22] iommu/vt-d: dynamically allocate and free seq_id for DMAR units Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 11/22] IOMMU/vt-d: introduce helper function dmar_walk_resources() Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 12/22] iommu/vt-d: implement DMAR unit hotplug framework Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 13/22] iommu/vt-d: search _DSM method for DMAR hotplug Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 14/22] iommu/vt-d: enhance intel_irq_remapping driver to support DMAR unit hotplug Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 15/22] iommu/vt-d: enhance error recovery in function intel_enable_irq_remapping() Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 16/22] iommu/vt-d: enhance intel-iommu driver to support DMAR unit hotplug Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 17/22] pci, ACPI, iommu: enhance pci_root to support DMAR device hotplug Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 9:49 ` Rafael J. Wysocki
2014-05-05 8:31 ` Jiang Liu
[not found] ` <1398150453-28141-18-git-send-email-jiang.liu-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2014-04-24 17:33 ` Bjorn Helgaas
2014-04-24 17:33 ` Bjorn Helgaas
2014-05-05 8:22 ` Jiang Liu [this message]
2014-04-22 7:07 ` [Patch Part3 V1 18/22] iommu/vt-d: update proximity information when a new node with memory available Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 19/22] iommu/vt-d: simplify intel_unmap_sg() and kill duplicated code Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:38 ` David Woodhouse
2014-04-22 7:42 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 20/22] iommu/vt-d: introduce helper domain_pfn_within_range() to simplify code Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 21/22] iommu/vt-d: introduce helper function iova_size() to improve code readability Jiang Liu
2014-04-22 7:07 ` Jiang Liu
2014-04-22 7:07 ` [Patch Part3 V1 22/22] iommu/vt-d: fix bug in computing domain's iommu_snooping flag Jiang Liu
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=53674A58.3050702@linux.intel.com \
--to=jiang.liu@linux.intel.com \
--cc=ashok.raj@intel.com \
--cc=bhelgaas@google.com \
--cc=dan.j.williams@intel.com \
--cc=dmaengine@vger.kernel.org \
--cc=dwmw2@infradead.org \
--cc=iommu@lists.linux-foundation.org \
--cc=joro@8bytes.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=rafael.j.wysocki@intel.com \
--cc=rjw@rjwysocki.net \
--cc=tony.luck@intel.com \
--cc=vinod.koul@intel.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.