Messages in this thread | | | Date | Thu, 31 Jul 2003 16:12:26 +0100 | From | Jamie Lokier <> | Subject | Re: Emulating i486 on i386 (was: TSCs are a no-no on i386) |
| |
Alan Cox wrote: > On Iau, 2003-07-31 at 12:38, Jan-Benedict Glaw wrote: > > Thanks for that. In the meantime, I've started to give a try to the > > userspace version (using a LD_PRELOAD lib). My current Problem: > > > > amtus:~/sigill_catcher# LD_PRELOAD=./libsigill.so ls > > sigill.c:_init():69: sigill started, sigaction() = 0 > > build.sh intercept.h libsigill.so run.sh sigill.c sigill.o > > amtus:~/sigill_catcher# LD_PRELOAD=./libsigill.so apt-get update > > Illegal instruction > > > > See? It's loaded at the "ls" call, but it seems to be not loaded for > > apt-get. > > Remember you need to overload signal setting functions like sigaction. > My guess is apt decided to disable your signal and you didnt stop it
An application might install its own SIGILL handler to emulate or trap _other_ instructions. To do it properly, you have to chain the handlers.
Not sure how to do this, when you get to the stage of two LD_PRELOAD libraries each wanting to overload sigaction.
-- Jamie
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |