Re: stack overflow on Sparc64

From: David Miller
Date: Fri Jun 20 2008 - 16:48:28 EST


From: Mikulas Patocka <mpatocka@xxxxxxxxxx>
Date: Fri, 20 Jun 2008 16:34:23 -0400 (EDT)

> And what if network softirq happened here? How much stack does it consume?
>
> The whole overflowed stack trace has 75 functions, I was able to get rid
> of 9 by avoiding bio_endio recursion and 10 by turning simple functions
> into inlines. --- so is it enough or not enough for possible networking
> calls?

It should be OK, because the minimum stack of a (75 - 19) depth call
chain is under 11K and within safe limits I believe.

> Maybe a good thing would be to add a check for stack size to __do_softirq
> and handing the softirq to ksoftirqd if there's not enough space.

I'd rather it spit out a WARN_ON() message and a backtrace.

Otherwise it will be considered a feature and people won't fix
these deep call chains.
--
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/