Re: [patch] Fix linux-ia64 on SIGILL for deleted breakpoint

Tristan Gingold
2010-07-19T09:50:20Z

On Jul 19, 2010, at 11:19 AM, Jan Kratochvil wrote:

> On Mon, 19 Jul 2010 11:04:26 +0200, Tristan Gingold wrote:
>> On Jul 19, 2010, at 10:58 AM, Jan Kratochvil wrote:
>>> in some cases ia64 can generate SIGILL instead of SIGTRAP. Guessing it is
>>> a CPU bug instead of Linux kernel bug (but I may be wrong).
>>> https://bugzilla.redhat.com/show_bug.cgi?id=615538
>>> http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/tests/ptrace-tests/tests/ia64-sigill.c?cvsroot=systemtap
>>
>> This is not a bug but a feature: the immediate of break.b is ignored by the processor.
>
> You are right, Intel IA64 manual says:
> For the b_unit_form, imm21 is ignored and the value zero is placed in
> the Interruption Immediate control register (IIM).

Yes, this is an amazing weirdness, which might be difficult to work-around before tukwila.