• Anton Blanchard's avatar
    powerpc: Add ppc64 hard lockup detector support · c54b2bf1
    Anton Blanchard authored
    The hard lockup detector uses a PMU event as a periodic NMI to
    detect if we are stuck (where stuck means no timer interrupts have
    occurred).
    
    Ben's rework of the ppc64 soft disable code has made ppc64 PMU
    exceptions a partial NMI. They can get disabled if an external
    interrupt comes in, but otherwise PMU interrupts will fire in
    interrupt disabled regions.
    
    We disable the hard lockup detector by default for a few reasons:
    
    - It breaks userspace event based branches on POWER8.
    - It is likely to produce false positives on KVM guests.
    - Since PMCs can only count to 2^31, counting cycles means we might
      take multiple PMU exceptions per second per hardware thread even
      if our hard lockup timeout is 10 seconds.
    
    It can be enabled via a boot option, or via procfs.
    Signed-off-by: default avatarAnton Blanchard <anton@samba.org>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    c54b2bf1
setup_64.c 20.8 KB