mirror of https://gitee.com/openkylin/linux.git
73891f72c4
Fix code that handles KVM_SET_ONE_REG, KVM_GET_ONE_REG ioctls to work in BE image. Before this fix get/set_one_reg functions worked correctly only in LE case - reg_from_user was taking 'void *' kernel address that actually could be target/source memory of either 4 bytes size or 8 bytes size, and code copied from/to user memory that could hold either 4 bytes register, 8 byte register or pair of 4 bytes registers. In order to work in endian agnostic way reg_from_user to reg_to_user functions should copy register value only to kernel variable with size that matches register size. In few place where size mismatch existed fix issue on macro caller side. Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
arm.c | ||
coproc.c | ||
coproc.h | ||
coproc_a7.c | ||
coproc_a15.c | ||
emulate.c | ||
guest.c | ||
handle_exit.c | ||
init.S | ||
interrupts.S | ||
interrupts_head.S | ||
mmio.c | ||
mmu.c | ||
perf.c | ||
psci.c | ||
reset.c | ||
trace.h |