diff options
author | Conrad Meyer <cem@FreeBSD.org> | 2019-05-16 17:34:36 +0000 |
---|---|---|
committer | Conrad Meyer <cem@FreeBSD.org> | 2019-05-16 17:34:36 +0000 |
commit | f4ab98c597fcf448d18fe51387e66da08e709a8c (patch) | |
tree | 655132b09e2d7ddcfb265cd52a8b625322f688f9 /sys | |
parent | 247186066847ed5a0a6dd69954f33ec834a9baae (diff) | |
download | src-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.c | 3 |
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) |