Re: [CHECKER] large stack variables (>=1K) in 2.4.4 and 2.4.4-ac8

Dawson Engler
2001-05-25T02:52:00Z

> check_nmi_watchdog() is __init and we know exactly when it's called.
> The interesting cases (SMP kernel, since for UP NR_CPUS==1) are:

Ah, nice --- I keep meaning to tell the checker to demote its warning
about NULL bugs or large stack vars in __init routines and/or routines
that have the substring "init" in them ;-)

> IMHO the checker tool should take call paths into consideration
> when trying to detect stack overflow problems. Does it do that?
> (I.e. is it polyvariant or monovariant?)

The var checker is more "really stupid". It just does a flow
insensitive pass looking for big variables. I could make it follow
call chains without too much work (other checkers do do this.)

> I could write a patch to make 'tmp' __initdata instead, which would
> silence the checker tool, but I don't really want to do that unless
> someone can convince me that there is a real problem here.

No need. Once it's marked as an FP the checker won't warn about it
anymore.

Thanks for post-mortem.