• Jason Wessel's avatar
    perf, hw_breakpoint, kgdb: Do not take mutex for kernel debugger · 5352ae63
    Jason Wessel authored
    This patch fixes the regression in functionality where the
    kernel debugger and the perf API do not nicely share hw
    breakpoint reservations.
    
    The kernel debugger cannot use any mutex_lock() calls because it
    can start the kernel running from an invalid context.
    
    A mutex free version of the reservation API needed to get
    created for the kernel debugger to safely update hw breakpoint
    reservations.
    
    The possibility for a breakpoint reservation to be concurrently
    processed at the time that kgdb interrupts the system is
    improbable. Should this corner case occur the end user is
    warned, and the kernel debugger will prohibit updating the
    hardware breakpoint reservations.
    
    Any time the kernel debugger reserves a hardware breakpoint it
    will be a system wide reservation.
    Signed-off-by: default avatarJason Wessel <jason.wessel@windriver.com>
    Acked-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
    Cc: kgdb-bugreport@lists.sourceforge.net
    Cc: K.Prasad <prasad@linux.vnet.ibm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Alan Stern <stern@rowland.harvard.edu>
    Cc: torvalds@linux-foundation.org
    LKML-Reference: <1264719883-7285-3-git-send-email-jason.wessel@windriver.com>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    5352ae63
hw_breakpoint.c 11.9 KB