• B
    [PATCH] x86_64: Enlarge debug stack for nested kprobes · a4045dff
    bibo mao 提交于
    In x86_64 platform, INT1 and INT3 trap stack is IST stack called DEBUG_STACK,
    when INT1/INT3 trap happens, system will switch to DEBUG_STACK by hardware.
    Current DEBUG_STACK size is 4K, when int1/int3 trap happens, kernel will
    minus current DEBUG_STACK IST value by 4k. But if int3/int1 trap is nested,
    it will destroy other vector's IST stack. This patch modifies this, it sets
    DEBUG_STACK size as 8K and allows two level of nested int1/int3 trap.
    
    Kprobe DEBUG_STACK may be nested, because kprobe handler may be probed
    by other kprobes.
    
    Thanks jbeulich for pointing out error in the first patch.
    
    [AK: nested kprobes are pretty dubious. Hopefully one nest
    will be enough. This will cost 8K per CPU (4K more than before)]
    Signed-off-by: Nbibo, mao <bibo.mao@intel.com>
    Signed-off-by: NAndi Kleen <ak@suse.de>
    Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
    a4045dff
page.h 4.4 KB