:
:I did it as part of the KSE work in 5.x.  It would be quite easy to do it
:for 4.x as well, but it makes a.out coredumps problematic.
:
:Also, "options UPAGES=4" is a pretty good defensive measure.
:
:Cheers,
:-Peter
:--
:Peter Wemm - [EMAIL PROTECTED]; [EMAIL PROTECTED]; [EMAIL PROTECTED]

    Well, in 4.x:

(kgdb) print p->p_addr          
$6 = (struct user *) 0xcb7b9000
(kgdb) print &p->p_addr->u_sigacts
$7 = (struct sigacts *) 0xcb7b9260
(kgdb) print &p->p_addr->u_stats  
$8 = (struct pstats *) 0xcb7b9cd0
(kgdb) print &p->p_addr->u_kproc
$9 = (struct kinfo_proc *) 0xcb7b9db0
(kgdb) print &p->p_addr->u_md   
$10 = (struct md_coredump *) 0xcb7ba1d0
(kgdb) print &p->p_addr->u_guard        (my new field)
$11 = (u_int32_t *) 0xcb7ba1d0
(kgdb) 

    cb7b9000    start of kstack
    cb7ba1d4    end of struct user
    cb7bb000    top of kstack

    Leaving us 3628 bytes for the kernel stack.

    Something really weird is going on... I added u_guard to the end
    of the struct user structure and there are two or three processes
    hitting the guard immediately.  All the rest are ok.  I'm going
    to investigate further but this is very odd.  Am I missing something
    about the UAREA?

                                -Matt


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to