diff options
author | Mike Waychison <mikew@google.com> | 2005-09-30 00:01:27 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-29 15:41:42 -0700 |
commit | 7644143cd6f7e029f3a8ea64f5fb0ab33ec39f72 (patch) | |
tree | 253112e894c11c37a52ac93fe0f470fe990c2c18 /drivers | |
parent | 7d318d774789657c37a5e994a4a2cf59d4879ae7 (diff) | |
download | lwn-7644143cd6f7e029f3a8ea64f5fb0ab33ec39f72.tar.gz lwn-7644143cd6f7e029f3a8ea64f5fb0ab33ec39f72.zip |
[PATCH] x86_64: Fix mce_log
The attempt to fixup the lockless mce log buffer introduced an infinite loop
when trying to find a free entry.
And:
Using rcu_dereference() to load mcelog.next doesn't seem to be sufficient
enough to ensure that mcelog.next is loaded each time around the loop in
mce_log(). Instead, use an explicit rmb() to ensure that the compiler gets it
right.
AK: turned the smp_wmbs into true wmbs to make sure they are not
reordered by the compiler on UP.
Signed-off-by: Mike Waychison <mikew@google.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions