aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorConrad Meyer <cem@FreeBSD.org>2019-05-16 17:34:36 +0000
committerConrad Meyer <cem@FreeBSD.org>2019-05-16 17:34:36 +0000
commitf4ab98c597fcf448d18fe51387e66da08e709a8c (patch)
tree655132b09e2d7ddcfb265cd52a8b625322f688f9 /sys
parent247186066847ed5a0a6dd69954f33ec834a9baae (diff)
downloadsrc-f4ab98c597fcf448d18fe51387e66da08e709a8c.tar.gz
src-f4ab98c597fcf448d18fe51387e66da08e709a8c.zip
xdma(4): Fix invalid pointer use (breaks arm.SOCFPGA build)
In xdma_handle_mem_node(), vmem_size_t and vmem_addr_t pointers were passed to an FDT API that emits u_long values to the output parameter pointer. This broke on systems with both xdma and 32-bit vmem size/addr types (SOCFPGA). Reported by: tinderbox Sponsored by: Dell EMC Isilon
Notes
Notes: svn path=/head/; revision=347828
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/xdma/xdma.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/dev/xdma/xdma.c b/sys/dev/xdma/xdma.c
index 68aac5d5b7c8..b2933cfe5f11 100644
--- a/sys/dev/xdma/xdma.c
+++ b/sys/dev/xdma/xdma.c
@@ -312,8 +312,7 @@ xdma_handle_mem_node(vmem_t *vmem, phandle_t memory)
pcell_t *regp;
int addr_cells, size_cells;
int i, reg_len, ret, tuple_size, tuples;
- vmem_addr_t mem_start;
- vmem_size_t mem_size;
+ u_long mem_start, mem_size;
if ((ret = fdt_addrsize_cells(OF_parent(memory), &addr_cells,
&size_cells)) != 0)