svn commit: r347828 - head/sys/dev/xdma

Conrad Meyer cem at FreeBSD.org
Thu May 16 17:34:37 UTC 2019


Author: cem
Date: Thu May 16 17:34:36 2019
New Revision: 347828
URL: https://svnweb.freebsd.org/changeset/base/347828

Log:
  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

Modified:
  head/sys/dev/xdma/xdma.c

Modified: head/sys/dev/xdma/xdma.c
==============================================================================
--- head/sys/dev/xdma/xdma.c	Thu May 16 17:34:09 2019	(r347827)
+++ head/sys/dev/xdma/xdma.c	Thu May 16 17:34:36 2019	(r347828)
@@ -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)


More information about the svn-src-head mailing list