Al,
    I happended to see this bug come across the CVS, and just wanted
to make sure that you've double checked it.  This was the exact area that
had to be changed relating to ELK's sys_brk() bug that disallowed
data segments > 32k...  I can't quite remember the original code.

Regards,

Greg

:   +/*
:   + * We only need to do this as long as we support old format binaries
:   + * that grow stack and heap towards each other
:   + */
:    void stack_check()
:    {
:    register __ptask currentp = current;
:   - if (currentp->t_regs.sp < currentp->t_endbrk)
:   - {
:   + if ((currentp->t_begstack > currentp->t_enddata) &&
:   +     (currentp->t_regs.sp < currentp->t_endbrk)) {
:    printk("STACK (%d) ENTERED BSS (%ld) - PROCESS TERMINATING\n",
currentp->t_regs.sp, currentp->t_endbrk);
:    do_exit(SIGSEGV);
:    }
:
:
:

Reply via email to