Re: crashme fault

Randy Dunlap
2007-09-15T23:50:22Z

Linus Torvalds wrote:
>
> On Sat, 15 Sep 2007, Linus Torvalds wrote:
>> So regardless of whether we want to trust "user_mode(regs)" more than
>> "error_code & PF_USER", it would definitely be very interesting if you can
>> give a good "this is where it started happening".
>
> Also, can you point to good crashme sources, and give the arguments you
> used to run it when it crashed?

I use http://people.delphiforums.com/gjc/crashme.tgz from
http://people.delphiforums.com/gjc/crashme.html, plus one small patch:

--- gjc-crashme.orig/crashme.c
+++ gjc-crashme/crashme.c
@@ -260,7 +260,8 @@ void my_signal(sig, func)
#else
struct sigaction act;
act.sa_handler = func;
- act.sa_mask = 0;
+ //act.sa_mask = 0;
+ sigemptyset(&act.sa_mask);
#ifdef linux
act.sa_restorer = 0;
#endif /* linux */

Command: ./crashme +2000 666 1000 1:00:00 1

> The original gjc crashme doesn't even do a "mprotect(PROT_EXEC)" by
> default (nor does it even compile on a modern unix), so it's not going to
> do anything. I hacked it up, and it appears to work ok for me, but I'm not
> at all confident that I'm even close to recreating what you are doing.

So I'm missing some mprotect() call also?
Oops.

> (It probably goes without saying that I've not reproduced the oops on my
> Core 2 Duo. Lots of #GP and #PF errors, but nothing interesting.
>
> Linus