arm64: optimize memcpy_{from,to}io() and memset_io()
authorJoonwoo Park <joonwoop@codeaurora.org>
Tue, 21 Oct 2014 00:59:03 +0000 (01:59 +0100)
committerWill Deacon <will.deacon@arm.com>
Thu, 6 Nov 2014 17:25:27 +0000 (17:25 +0000)
commit70ddb63a88bfd45eb6abe36e2bf4f8f351a447d7
tree4dcae5cd2781e3265f0a5a9effc4060943ae04c5
parent4ee20980812b5b1800221996ec438689f61e98b4
arm64: optimize memcpy_{from,to}io() and memset_io()

Optimize memcpy_{from,to}io() and memset_io() by transferring in 64 bit
as much as possible with minimized barrier usage.  This simplest
optimization brings faster throughput compare to current byte-by-byte read
and write with barrier in the loop.  Code's skeleton is taken from the
powerpc.

Link: http://lkml.kernel.org/p/20141020133304.GH23751@e104818-lin.cambridge.arm.com
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Trilok Soni <tsoni@codeaurora.org>
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/kernel/io.c