ARM: 8475/1: SWP emulation: Restore original *data when failed
authorShengjiu Wang <shengjiu.wang@freescale.com>
Tue, 8 Dec 2015 12:37:19 +0000 (13:37 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 15 Dec 2015 11:51:42 +0000 (11:51 +0000)
commit34bfbae33ae84107d0c257edd6c6a8689a09be26
tree5d8fbefb9caa76e73a8077217242883dd74a6945
parentfa0708b320f6da4c1104fe56e01b7abf66fd16ad
ARM: 8475/1: SWP emulation: Restore original *data when failed

__user_swpX_asm maybe failed in first STREX operation, emulate_swpX
will try again, but the *data has been changed in first time. which
causes the result is wrong.
This patch is to fix this issue. When STREX succeed, change the *data.
if it fail, *data is not changed.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/swp_emulate.c