]> git.karo-electronics.de Git - karo-tx-linux.git/commit
parisc: fix SMP races when updating PTE and TLB entries in entry.S
authorJohn David Anglin <dave.anglin@bell.net>
Fri, 10 May 2013 23:21:38 +0000 (23:21 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 May 2013 18:38:45 +0000 (11:38 -0700)
commit94754ecd526651ef163d1b12562b5d0ea7f96ce0
tree20b97dac2e9030863d7a5e8042b4df49ff35f726
parentcdc9fd4956b3a525f68eae79b0f6b859e944a5ce
parisc: fix SMP races when updating PTE and TLB entries in entry.S

commit f0a18819e261afc5fdbd8c5c6f9943123c5461ba upstream.

Currently, race conditions exist in the handling of TLB interruptions in
entry.S.  In particular, dirty bit updates can be lost if an accessed
interruption occurs just after the dirty bit interruption on a different
cpu.  Lost dirty bit updates result in user pages not being flushed and
general system instability.  This change adds lock and unlock macros to
synchronize all PTE and TLB updates done in entry.S.  As a result,
userspace stability is significantly improved.

Signed-off-by: John David Anglin <dave.anglin@bell.net>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/parisc/kernel/entry.S