• Peter Zijlstra's avatar
    perf_counter: fix update_userpage() · 38ff667b
    Peter Zijlstra authored
    It just occured to me it is possible to have multiple contending
    updates of the userpage (mmap information vs overflow vs counter).
    This would break the seqlock logic.
    
    It appear the arch code uses this from NMI context, so we cannot
    possibly serialize its use, therefore separate the data_head update
    from it and let it return to its original use.
    
    The arch code needs to make sure there are no contending callers by
    disabling the counter before using it -- powerpc appears to do this
    nicely.
    Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Acked-by: default avatarPaul Mackerras <paulus@samba.org>
    Orig-LKML-Reference: <20090330171023.241410660@chello.nl>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    38ff667b
perf_counter.c 68 KB