summaryrefslogtreecommitdiffstats
path: root/sys/dev/acpica/acpi_pcib_acpi.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2001-10-06 03:49:38 +0000
committerpeter <peter@FreeBSD.org>2001-10-06 03:49:38 +0000
commitef8de6ecd980a5f9e0dc588c375b4ec04bf55aef (patch)
tree1d72b3fdc33e60c09f8d243a5b8aa8d9026c570c /sys/dev/acpica/acpi_pcib_acpi.c
parentc8c1edd0bbc08d04b210c46e861b4c542d74bb70 (diff)
downloadFreeBSD-src-ef8de6ecd980a5f9e0dc588c375b4ec04bf55aef.zip
FreeBSD-src-ef8de6ecd980a5f9e0dc588c375b4ec04bf55aef.tar.gz
Fix a stack trashing bug when int != sizeof(pointer)
This fixes the ia64 boot! We have scsi disks!
Diffstat (limited to 'sys/dev/acpica/acpi_pcib_acpi.c')
-rw-r--r--sys/dev/acpica/acpi_pcib_acpi.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/acpica/acpi_pcib_acpi.c b/sys/dev/acpica/acpi_pcib_acpi.c
index c79714f..d3c1ed1 100644
--- a/sys/dev/acpica/acpi_pcib_acpi.c
+++ b/sys/dev/acpica/acpi_pcib_acpi.c
@@ -292,6 +292,7 @@ acpi_pcib_route_interrupt(device_t pcib, device_t dev, int pin)
int bus;
int interrupt;
int i;
+ uintptr_t up;
FUNCTION_TRACE(__func__);
@@ -306,7 +307,8 @@ acpi_pcib_route_interrupt(device_t pcib, device_t dev, int pin)
/* find the bridge softc */
if (devclass_get_devices(acpi_pcib_devclass, &devlist, &devcount))
goto out;
- BUS_READ_IVAR(pcib, pcib, PCIB_IVAR_BUS, (uintptr_t *)&bus);
+ BUS_READ_IVAR(pcib, pcib, PCIB_IVAR_BUS, &up);
+ bus = up;
sc = NULL;
for (i = 0; i < devcount; i++) {
sc = device_get_softc(*(devlist + i));
OpenPOWER on IntegriCloud