After another round of review, here is a revised set of MMIO copy patches.
These have switched the name of the copy routine to __iowrite32_copy,
to match the naming convention in include/asm-generic/iomap.h, and at
Andi's request. The name is double-underscored to make it clear that
the routine does not guarantee the order of writes or perform a memory
barrier; the kernel doc also explicitly states this.
These define the generic __iowrite32_copy as a weak symbol, which
arches are free to override. We provide a specialised implementation
for x86_64. In a change from prior versions of these patches, the x86_64
version no longer makes any assumptions about the bus breaking up 64-bit
transactions, and uses 32-bit copies directly.
We also introduce include/linux/io.h, which is tiny now, but a candidate
for later cleanups of all the per-arch asm-*/{io,iomap}.h files.
These patches should apply cleanly against current -git, and have been
tested on i386 and x86_64.
The patch series is as follows:
iomap_copy.patch
Introduce the generic MMIO 32-bit copy routine.
x86_64-iomap_copy.patch
Add a faster __iowrite32_copy routine to x86_64.
Signed-off-by: Bryan O'Sullivan <[email protected]>
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]