Messages in this thread | | | Date | Fri, 11 Apr 2008 16:12:37 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: Shutdown and Reboot Regression 2.6.25-rc[78] |
| |
On Fri, 11 Apr 2008, Bongani Hlope wrote: > > After about 4 restarts and 4 reboots, 2.6.25-rc9 seems to work fine with and > without the revert. I'll do some more testing. The assembly output files for > kernel/printk.c don't seem that different between rc9 and rc7. I'll see what > else I can test.
Ok, I suspect it may be timing-dependent and slightly random.
Sadly, that is absolutely the case where "git bisect" works the worst. The end result of bisection will basically be _totally_ random if even one of the "git bisect bad/good" choises were wrong - doing a binary search is a very efficient way to find the buggy commit, but it also means that a single wrong turn will efficiently find a commit that is somewhere totally different.
So if your shutdown/reboot regression is even slightly non-deterministic, it makes "git bisect" rather less powerful (you can still do bisection, but you just need to be extra careful and probably try multiple shutdowns with a suspect kernel just to be absolutely sure you mark a kernel good only if you're *really* sure it's good. Marking a kernel bad is much safer, since you'd presumably only do that when you have actually seen the bug in action)..
Of course, even when you're really really careful, if it really is timing-dependent, the bug may show up with a unrelated commit just because it changes timing. Those kinds of bugs tend to be fairly rare, but they do occasionally happen.
Linus
| |