git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: AAARGH bisection is hard (Re: [2.6.39 regression] X locks up hard right after logging in)

From
ALAndrew Lutomirski <luto@mit.edu>
Date
May 13, 2011, 16:13 UTC
Message-ID
<BANLkTikDafbCnsXPoidnMBAE0qtd9aC4oQ@mail.gmail.com>
In-Reply-To
<BANLkTimE2GkkhcFZtNrYZASWp0LDhUx=GQ@mail.gmail.com>

On Fri, May 13, 2011 at 12:11 PM, Linus Torvalds <torvalds@linux-foundation.org> wrote:

Show 28 quoted lines
> On Fri, May 13, 2011 at 7:56 AM, Andrew Lutomirski <luto@mit.edu> wrote:
>>
>> So what I really want is a fancy version of git bisect that makes no
>> assumptions about the relationship of good and bad commits in the
>> graph and just finds me a commit that is bad but for which all parents
>> are good or vice versa.
>
> Ehh. That's the "non-fancy" way of testing, I'm afraid: if you cannot
> make assumption about the relationship between good and bad commits,
> then you have to test _every_ commit.
>
> So yes, bisection has its problems. But they really do come from the
> fact that it's very efficient. When you have (on average) about ten
> thousand commits between releases, you have to make assumptions about
> the relationships. But once you do that, the efficiency also results
> in a certain fragility.
>
> Think of it as a compression method: it generates the smallest
> possible set of test points for you. But it's a "lossy" compression -
> you don't test everything. And it's extreme: it boils down 10k commit
> events to about 13 bisection events. If anything goes wrong (like the
> bug not being entirely repeatable, or the bug comes and goes), it will
> give the wrong answer.
>
> The good news is that _usually_ it works really well. And when the
> choice is between "works really well for 10k commits but can have
> problems" and "you need to test all 10k commits", the "can have
> problems" part turns out to be a pretty small downside ;)

In conclusion, I found the problem. It's a clusterfuck and I think there's no way that any bisection tool under any sane assumptions could have found it. Patch coming in a couple seconds b/c I think it needs to go in to 2.6.39.

--Andy
>
>                                Linus
>
Previous: Linus TorvaldsNext: Andrew Lutomirski
Message 10 of 18 in “AAARGH bisection is hard (Re: [2.6.39 regression] X locks up hard right after logging in)”
  1. Andrew LutomirskiMay 12, 2011
  2. Linus TorvaldsMay 12, 2011
  3. Johannes SixtMay 12, 2011
  4. Linus TorvaldsMay 12, 2011
  5. Andrew LutomirskiMay 13, 2011
  6. Christian CouderMay 13, 2011
  7. Andrew LutomirskiMay 13, 2011
  8. Andrew LutomirskiMay 13, 2011
  9. Linus TorvaldsMay 13, 2011
  10. Andrew LutomirskiMay 13, 2011
  11. Andrew LutomirskiMay 13, 2011
  12. Linus TorvaldsMay 13, 2011
  13. Johannes SixtMay 13, 2011
  14. Linus TorvaldsMay 13, 2011
  15. Johannes SixtMay 13, 2011
  16. Junio C HamanoMay 13, 2011
  17. Andrew LutomirskiMay 13, 2011
  18. Linus TorvaldsMay 13, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.