summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormdf <mdf@FreeBSD.org>2011-01-13 00:52:57 +0000
committermdf <mdf@FreeBSD.org>2011-01-13 00:52:57 +0000
commit0afa6047de588a5be3ac2a79258dfd2afe3cd216 (patch)
tree525fa738b4f051f0d14a59c53873b724882a9684
parentee9487795dbb92eba9e34f1eaaf2da89f6999840 (diff)
downloadFreeBSD-src-0afa6047de588a5be3ac2a79258dfd2afe3cd216.zip
FreeBSD-src-0afa6047de588a5be3ac2a79258dfd2afe3cd216.tar.gz
Revert to using bus_size_t for the bounce_zone's alignment member.
Reuqested by: jhb
-rw-r--r--sys/x86/x86/busdma_machdep.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/sys/x86/x86/busdma_machdep.c b/sys/x86/x86/busdma_machdep.c
index e98e982..d4508c4 100644
--- a/sys/x86/x86/busdma_machdep.c
+++ b/sys/x86/x86/busdma_machdep.c
@@ -100,7 +100,7 @@ struct bounce_zone {
int total_bounced;
int total_deferred;
int map_count;
- uint32_t alignment;
+ bus_size_t alignment;
bus_addr_t lowaddr;
char zoneid[8];
char lowaddrid[20];
@@ -993,6 +993,13 @@ busdma_sysctl_tree_top(struct bounce_zone *bz)
return (bz->sysctl_tree_top);
}
+#if defined(__amd64__) || defined(PAE)
+#define SYSCTL_ADD_BUS_SIZE_T SYSCTL_ADD_UQUAD
+#else
+#define SYSCTL_ADD_BUS_SIZE_T(ctx, parent, nbr, name, flag, ptr, desc) \
+ SYSCTL_ADD_UINT(ctx, parent, nbr, name, flag, ptr, 0, desc)
+#endif
+
static int
alloc_bounce_zone(bus_dma_tag_t dmat)
{
@@ -1060,9 +1067,9 @@ alloc_bounce_zone(bus_dma_tag_t dmat)
SYSCTL_ADD_STRING(busdma_sysctl_tree(bz),
SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO,
"lowaddr", CTLFLAG_RD, bz->lowaddrid, 0, "");
- SYSCTL_ADD_UINT(busdma_sysctl_tree(bz),
+ SYSCTL_ADD_BUS_SIZE_T(busdma_sysctl_tree(bz),
SYSCTL_CHILDREN(busdma_sysctl_tree_top(bz)), OID_AUTO,
- "alignment", CTLFLAG_RD, &bz->alignment, 0, "");
+ "alignment", CTLFLAG_RD, &bz->alignment, "");
return (0);
}
OpenPOWER on IntegriCloud