Re: lowlatency-2.2.14-B1 + 2.2.14aa7 fixes crash, but...

From: William Montgomery (william@opinicus.com)
Date: Tue Feb 15 2000 - 14:29:25 EST


On Tue, 15 Feb 2000, Ingo Molnar wrote:
>
> On Tue, 15 Feb 2000, William Montgomery wrote:
>
> > all FAILED hunks except in entry.S for the following code snippit:
> > -----part of entry.S.rej-------
> > testl $(VM_MASK),EFLAGS(%esp)
> > movl %esp,%eax
> > jne v86_signal_return
> > + #ifndef CONFIG_KERNEL_DEBUGGING
> > xorl %edx,%edx
> > + #else
> > + pushl $0
> > + pushl %eax
> > + #endif
> > call SYMBOL_NAME(do_signal)
> > + #ifdef CONFIG_KERNEL_DEBUGGING
> > + addl $8,%esp
> > + #endif
>
> > I think I can fix the FAILED hunk but I would feel more confident if I
> > knew what this code was doing. Can you give a brief explanation of
> > the ikd additions in this area?
>
> thats a workaround i added ages ago - we switch off the FASTCALL macro
> (regparm calling-convention extension of GCC which passes up to 3
> parameters through %eax, %edx, %ecx) - in the IKD case the parameters go
> through the stack, in the non-IKD case edx (second parameter) is zeroed,
> eax is passed in as-is.
>
OK, I understand that. I see the stack pushes prior to the call
SYMBOL_NAME(do_signal) and then the add to the stack pointer, but why
is the call SYMBOL_NAME(save_v86_state) treated differently?

Wm

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Feb 15 2000 - 21:00:30 EST