On Tue, Sep 22, 2026 at 01:25:07PM +0900, Masami Hiramatsu (Google) wrote:
> diff --git a/arch/x86/kernel/hw_breakpoint.c b/arch/x86/kernel/hw_breakpoint.c
> index f846c15f21ca..0473a5c95856 100644
> --- a/arch/x86/kernel/hw_breakpoint.c
> +++ b/arch/x86/kernel/hw_breakpoint.c
> @@ -102,6 +102,9 @@ int arch_install_hw_breakpoint(struct perf_event *bp)
>
> lockdep_assert_irqs_disabled();
>
> + if (perf_guest_in_guest())
That naming is hilariously bad :-)
> + return -EBUSY;
> +
> for (i = 0; i < HBP_NUM; i++) {
> struct perf_event **slot = this_cpu_ptr(&bp_per_reg[i]);
>
Note how the other -EBUSY return is a WARN. Why is silently not doing
anything not a WARN in this case?
And I suppose this is KGDB again?