Page MenuHomeFreeBSD

D32787.id103351.diff
No OneTemporary

D32787.id103351.diff

diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c
--- a/sys/dev/acpica/acpi.c
+++ b/sys/dev/acpica/acpi.c
@@ -1200,6 +1200,7 @@
acpi_hint_device_unit(device_t acdev, device_t child, const char *name,
int *unitp)
{
+ device_location_cache_t *cache;
const char *s;
int line, unit;
bool matches;
@@ -1209,6 +1210,7 @@
* name to see if one's resources are a subset of this device.
*/
line = 0;
+ cache = dev_wired_cache_init();
while (resource_find_dev(&line, name, &unit, "at", NULL) == 0) {
/* Must have an "at" for acpi or isa. */
resource_string_value(name, unit, "at", &s);
@@ -1216,6 +1218,8 @@
if (strcmp(s, "acpi0") == 0 || strcmp(s, "acpi") == 0 ||
strcmp(s, "isa0") == 0 || strcmp(s, "isa") == 0)
matches = acpi_hint_device_matches_resources(child, name, unit);
+ else
+ matches = dev_wired_cache_match(cache, child, s);
if (matches) {
/* We have a winner! */
@@ -1223,6 +1227,7 @@
break;
}
}
+ dev_wired_cache_fini(cache);
}
/*

File Metadata

Mime Type
text/plain
Expires
Wed, Nov 20, 7:33 PM (3 h, 4 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14743619
Default Alt Text
D32787.id103351.diff (1 KB)

Event Timeline