summaryrefslogtreecommitdiffstats
path: root/sys/isa/fd.c
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>2000-04-30 10:01:56 +0000
committerbde <bde@FreeBSD.org>2000-04-30 10:01:56 +0000
commit2c5c997046c6e9a4b46da8c795733ef867dc7053 (patch)
treeae0bd2763d4f3ed2e02b85b96cbb170999920569 /sys/isa/fd.c
parent8b471affb9f3b118378c27a18ddbeff7fccf2186 (diff)
downloadFreeBSD-src-2c5c997046c6e9a4b46da8c795733ef867dc7053.zip
FreeBSD-src-2c5c997046c6e9a4b46da8c795733ef867dc7053.tar.gz
Fixed the type of some ivar access functions. Ivars have type uintptr_t,
not u_long. On i386's with 64-bit longs, returning u_longs indirectly in (more than) the space reserved for uintptr_t's tended to corrupt the previous frame pointer in the stack frame, so it was not easy to debug. The type mismatches are hidden by the bogus cast in DEVMETHOD().
Diffstat (limited to 'sys/isa/fd.c')
-rw-r--r--sys/isa/fd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/isa/fd.c b/sys/isa/fd.c
index c1b02b1..cd4df13 100644
--- a/sys/isa/fd.c
+++ b/sys/isa/fd.c
@@ -660,7 +660,7 @@ static struct isa_pnp_id fdc_ids[] = {
};
static int
-fdc_read_ivar(device_t dev, device_t child, int which, u_long *result)
+fdc_read_ivar(device_t dev, device_t child, int which, uintptr_t *result)
{
struct fdc_ivars *ivars = device_get_ivars(child);
OpenPOWER on IntegriCloud