[PATCH V10 2/8] ACPI: Add new IORT functions to support MSI domain handling
From: rafael@kernel.org (Rafael J. Wysocki)
Date: 2016-09-07 11:32:42
Also in:
linux-acpi, linux-pci, lkml
From: rafael@kernel.org (Rafael J. Wysocki)
Date: 2016-09-07 11:32:42
Also in:
linux-acpi, linux-pci, lkml
On Wed, Sep 7, 2016 at 12:35 PM, Tomasz Nowicki [off-list ref] wrote:
Rafael, There are two fixes for iort.c: 1. patch 1 - convert switch to if-else in iort_match_node_callback() 2. patch 2 - remove static local variable for iort_get_device_domain() Do you want me to repost these patches to get your ACK, or you want new V11?
Please repost the patches with changes (mark the new versions by adding "[Update]" to the subject line or similar). Thanks, Rafael
On 06.09.2016 12:27, Tomasz Nowicki wrote:quoted
On 06.09.2016 12:20, Thomas Gleixner wrote:quoted
On Tue, 6 Sep 2016, Tomasz Nowicki wrote:quoted
+/** + * iort_get_device_domain() - Find MSI domain related to a device + * @dev: The device. + * @req_id: Requester ID for the device. + * + * Returns: the MSI domain for this device, NULL otherwise + */ +struct irq_domain *iort_get_device_domain(struct device *dev, u32 req_id) +{ + static struct fwnode_handle *handle;static ??????quoted
+ int its_id; + + if (iort_dev_find_its_id(dev, req_id, 0, &its_id)) + return NULL; + + handle = iort_find_domain_token(its_id);You reevaluate that on every call.Obviously it is the bug. Thanks for spotting this. Tomasz