Re: [PATCH] x86-64 support for singlestep into 32-bit system calls

From: Andi Kleen
Date: Tue Jul 13 2004 - 02:25:14 EST


On Mon, 12 Jul 2004 16:58:26 -0700
Roland McGrath <roland@xxxxxxxxxx> wrote:

> This patch makes x86-64's 32-bit support behave consistently with the
> native i386 behavior achieved in Davide Libenzi's patch:
> http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7/2.6.7-mm7/broken-out/really-ptrace-single-step-2.patch
>
> I hope these both can go into 2.6.8 or 2.6.9, since they make life
> better for gdb.

I would prefer not to merge this. It looks extremly ugly and the current
behaviour is not that unreasonable and gdb has lived with it forever,
so why can't it continue it? It has to keep supporting old versions
anyways and other i386 OS it supports probably do the same.

If i386 merges it I guess it's ok for consistency, but it would be
better to not do it at all.


> +#ifdef CONFIG_IA32_EMULATION
> + clear_tsk_thread_flag(child, TIF_SINGLESTEP);
> +#endif


This looks wrong. Why do you do this unconditionally when 32bit
emulation is compiled in? Either it is correct to do for 64bit
processes, then the ifdef should go, or it is not correct then
it would need a test. For me dropping the flag both for 32bit
and 64bit looks wrong.

Same in other hunks.

-Andi

-
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/