On Fri, Oct 24, 2014 at 04:20:41PM +0200, Rafael J. Wysocki wrote: > > +static bool acpi_companion_match(const struct device *dev) > > +{ > > + struct acpi_device *adev; > > + bool ret; > > + > > + adev = ACPI_COMPANION(dev); > > + if (!adev) > > + return false; > > + > > + if (list_empty(&adev->pnp.ids)) > > + return false; > > + > > + ret = true; > > On a second thought, should we return true if the list of physical devices is > empty? That surely means ACPI_COMPANION(dev) lied to us? I didn't consider that it is even possible but yes, in that case we should not return true here. > > > + mutex_lock(&adev->physical_node_lock); > > + if (!list_empty(&adev->physical_node_list)) { > > + const struct acpi_device_physical_node *node; > > + > > + node = list_first_entry(&adev->physical_node_list, > > + struct acpi_device_physical_node, node); > > + if (node->dev != dev) > > + ret = false; > > And that may be simply > > ret = node->dev == dev; OK. > > + } > > + mutex_unlock(&adev->physical_node_lock); > > + > > + return ret; > > +} > > + -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html