Re: Q: user_enable_single_step() && update_debugctlmsr()
From: Sebastian Andrzej Siewior
Date: Wed Aug 01 2012 - 09:54:47 EST
On 08/01/2012 03:46 PM, Oleg Nesterov wrote:
But, worse, isn't it wrong? Suppose that debugger switches to
another TIF_SINGLESTEP&& !TIF_BLOCKSTEP task, in this case
we "leak" DEBUGCTLMSR_BTF, no?
__switch_to_xtra() should notice the difference in the TIF_BLOCKSTEP
flag and disable it.
And how it can notice the difference if there is no difference?
(unless, of course debugger is TIF_BLOCKSTEP'ed).
Yes. enable_step() sets DEBUGCTLMSR_BTF along with TIF_BLOCKSTEP.
kprobes checks the same flag before touching DEBUGCTLMSR_BTF.
Oleg.
Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/