• Mike Waychison's avatar
    [PATCH] x86_64: Fix mce_log · 7644143c
    Mike Waychison authored
    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: default avatarMike Waychison <mikew@google.com>
    Signed-off-by: default avatarAndi Kleen <ak@suse.de>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    7644143c
mce.c 15.9 KB