aboutsummaryrefslogtreecommitdiff
path: root/lib/flex_array.c
diff options
context:
space:
mode:
authorJohn David Anglin <[email protected]>2017-09-30 17:24:23 -0400
committerHelge Deller <[email protected]>2017-10-19 08:48:44 +0200
commit374b3bf8e8b519f61eb9775888074c6e46b3bf0c (patch)
treef3bf23769e2de1a8e6c8e3b9486a7221e6fc56cf /lib/flex_array.c
parent73d3393ada4f70fa3df5639c8d438f2f034c0ecb (diff)
parisc: Fix double-word compare and exchange in LWS code on 32-bit kernels
As discussed on the debian-hppa list, double-wordcompare and exchange operations fail on 32-bit kernels. Looking at the code, I realized that the ",ma" completer does the wrong thing in the "ldw,ma 4(%r26), %r29" instruction. This increments %r26 and causes the following store to write to the wrong location. Note by Helge Deller: The patch applies cleanly to stable kernel series if this upstream commit is merged in advance: f4125cfdb300 ("parisc: Avoid trashing sr2 and sr3 in LWS code"). Signed-off-by: John David Anglin <[email protected]> Tested-by: Christoph Biedl <[email protected]> Fixes: 89206491201c ("parisc: Implement new LWS CAS supporting 64 bit operations.") Cc: [email protected] # 3.13+ Signed-off-by: Helge Deller <[email protected]>
Diffstat (limited to 'lib/flex_array.c')
0 files changed, 0 insertions, 0 deletions