]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commit
[PATCH] x86_64: Enlarge debug stack for nested kprobes
authorbibo mao <bibo.mao@intel.com>
Fri, 28 Jul 2006 12:44:48 +0000 (14:44 +0200)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sat, 29 Jul 2006 02:28:00 +0000 (19:28 -0700)
commita4045dff782a8692637c24a0222120082c887caa
tree67f4fe2bb6975bce2887c295752c7612896130f9
parent0e92da4acb763272c6060f0b14adc2377b627d07
[PATCH] x86_64: Enlarge debug stack for nested kprobes

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: bibo, mao <bibo.mao@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
include/asm-x86_64/page.h