On Wed, Oct 12, 2011 at 3:57 PM, Kumar Gala <ga...@kernel.crashing.org> wrote: > From: Kai Jiang <kai.ji...@freescale.com> > > To support >32-bit physical addresses for UIO_MEM_PHYS type we need to > extend the width of 'addr' in struct uio_mem. Numerous platforms like > embedded PPC, ARM, and X86 have support for systems with larger physical > address than logical. > > Since 'addr' may contain a physical, logical, or virtual address the > easiest solution is to just change the type to 'unsigned long long' > regardless of which type is utilized.
You forgot to update this description. > struct uio_mem { > const char *name; > - unsigned long addr; > + phys_addr_t addr; Please add a comment here saying: 1) That 'addr' can be a virtual or physical address 2) That the kernel guarantees that sizeof(phys_addr_t) >= sizeof(void *), so it's safe to use phys_addr_t for a virtual pointer. -- Timur Tabi Linux kernel developer at Freescale _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev