Re: [PATCH 2.6.18-rc3-mm2] KPROBE_ENTRY ends up putting code into .fixup

From: Andi Kleen
Date: Tue Aug 08 2006 - 22:18:09 EST


On Wednesday 09 August 2006 03:18, Jeremy Fitzhardinge wrote:
> KPROBE_ENTRY does a .section .kprobes.text, and expects its users to
> do a .previous at the end of the function.
>
> Unfortunately, if any code within the function switches sections, for
> example .fixup, then the .previous ends up putting all subsequent code
> into .fixup. Worse, any subsequent .fixup code gets intermingled with
> the code its supposed to be fixing (which is also in .fixup). It's
> surprising this didn't cause more havok.
>
> The fix is to use .pushsection/.popsection, so this stuff nests
> properly. A further cleanup would be to get rid of all
> .section/.previous pairs, since they're inherently fragile.

Added thanks.
-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/