Re: w35und: fixed nasty stack overflow, I can actually ssh overthis

From: Pavel Machek
Date: Tue May 06 2008 - 08:39:06 EST


Hi!
> > Removed nasty stack overflow, and got transmit of big packets to work.
> > I can now actually do ssh over softmac-based driver.
> >
> > Unindent code to make it more readable.
>
> > --- a/arch/x86/kernel/traps_32.c
> > +++ b/arch/x86/kernel/traps_32.c
> > @@ -146,11 +146,16 @@ static inline unsigned long print_contex
> > unsigned long *stack, unsigned long bp,
> > const struct stacktrace_ops *ops, void *data)
> > {
> > + int max = 5;
> > struct stack_frame *frame = (struct stack_frame *)bp;
> >
> > while (valid_stack_ptr(tinfo, stack, sizeof(*stack))) {
> > unsigned long addr;
> >
> > + if (!max)
> > + return;
> > + max--;
> > +
>
> hm, you got into an infinite loop here, right? Could you please send
> this bit as a separate patch - and i guess it should use
> kstack_depth_to_print instead of '5'?

No, sorry, this should not have been in this patch. (And no, this is
not the overflow I was talking about).

What happened to me is that current oops is too long even for vga=1,
and I was trying to see where it dies.

I was trying to only print first few lines of the backtrace, but then
I fix the nasty bug...
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/