OSDN Git Service

arm64: fix endianness annotation for aarch64_insn_write()
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>
Wed, 28 Jun 2017 14:58:11 +0000 (16:58 +0200)
committerWill Deacon <will.deacon@arm.com>
Thu, 29 Jun 2017 10:02:42 +0000 (11:02 +0100)
commit57c138357d5922878b3bc5207bd59b8512ee80e6
treea4a33d37062318c9cf4cffac7c69ce0c3b9fe82a
parent65de142143206c7ffd98b0fcb062a79b3c6f1934
arm64: fix endianness annotation for aarch64_insn_write()

aarch64_insn_write() is used to write an instruction.
As on ARM64 in-memory instructions are always stored
in little-endian order, this function, taking the instruction
opcode in native order, correctly convert it to little-endian
before sending it to an helper function __aarch64_insn_write()
which will do the effective write.

This is all good, but the variable and argument holding the
converted value are not annotated for a little-endian value
but left for native values.

Fix this by adjusting the prototype of the helper and
directly using the result of cpu_to_le32() without passing
by an intermediate variable (which was not a distinct one
but the same as the one holding the native value).

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/kernel/insn.c