• Andrew Morton's avatar
    [PATCH] Allow i386 to reenable interrupts on lock contention · 36f9f209
    Andrew Morton authored
    From: Zwane Mwaikambo <zwane@linuxpower.ca>
    
    Following up on Keith's code, I adapted the i386 code to allow enabling
    interrupts during contested locks depending on previous interrupt
    enable status. Obviously there will be a text increase (only for non
    CONFIG_SPINLINE case), although it doesn't seem so bad, there will be an
    increased exit latency when we attempt a lock acquisition after spinning
    due to the extra instructions. How much this will affect performance I'm
    not sure yet as I haven't had time to micro bench.
    
       text    data     bss     dec     hex filename
    2628024  921731       0 3549755  362a3b vmlinux-after
    2621369  921731       0 3543100  36103c vmlinux-before
    2618313  919222       0 3537535  35fa7f vmlinux-spinline
    
    The code has been stress tested on a 16x NUMAQ (courtesy OSDL).
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    36f9f209
spinlock.h 5 KB