6 comments

  • hyperpape 1 hour ago
    The analysis of the kernel bug may be a better thing to link to: https://github.com/dfoxfranke/ripgrep-3494-analysis.
    • fwlr 3 minutes ago

          The overflow would still overflow; the use-after-free would still use after free; a musl mask race would still race. 
      
      Hilarious. Apart from the computer poetry, the conclusion seems to be “it’s something in Linux 7.0 + musl 1.2.5”, although the only reproduction is still on the same physical Threadripper CPU and only sometimes when heavily exercised, so it hasn’t really ruled out a hardware issue.
    • amluto 36 minutes ago
      Nice sleuthing, nonsense explanation. An extra TLB flush is never an error. (The CPU is free to flush whenever it feels like doing so.) The error seems to be that somehow a zero-page PTE was present when it shouldn’t have been.

      This sounds to me like either (a) a complex race involving a CPU migration at an awkward time or (b) a bug in the zap path transiently exposing wrong PTEs.

      Also, I don’t think the zero page has pfn zero.

      If I had to throw a dart, I would guess that direct page table zapping is allowing a CPU to read through a higher-level-paging-structure cached entry to a table that has been freed and reused. Yuck. I’ve debugged one of these before.

      • Retr0id 3 minutes ago
        The part that doesn't make sense to me is that trying to read through a zeroed PTE should be an immediate segfault, not something that reads back zeroes.

        I think the broad strokes are that, due to bad locking in the kernel (introduced by FAULT_FLAG_VMA_LOCK), mmap() returns a VA that a concurrent munmap() is still in the middle of unmapping. The specifics beyond that seem murky/speculative/inconsistent.

      • inigyou 24 minutes ago
        The explanation is obviously written by an AI agent.
    • yawndex 59 minutes ago
      soulless unreadable AI slop
      • hoppp 57 minutes ago
        I can read it but not sure if worth spending energy on it.

        It doesn't make sense for the reader to spend more energy than the writer spent on creating it.

        • agumonkey 46 minutes ago
          > It doesn't make sense for the reader to spend more energy than the writer spent on creating it.

          Great way to summarize cultural "economics"

          Couldn't put the words on this pattern but sometimes all I care about is that someone cared about.

        • serf 21 minutes ago
          energy might be the wrong metric, plenty of energy was wasted spinning up that LLM.
        • wild_pointer 54 minutes ago
          PoC||GTFO, if it reproduces, it's valuable
          • smallerize 46 minutes ago
            Then post whatever notes were fed into the AI instead. The verbosity and self-congratulating add negative value.
            • wild_pointer 40 minutes ago
              That I agree with (not instead, in addition)
            • im3w1l 43 minutes ago
              What will you do when the prompt was "Figure out the bug and write a report for me". Not saying it was in this particular case, but I think at least in other cases, it will be.
          • inigyou 23 minutes ago
            They have a PoC, we're arguing about the LLM-generated slop explanation of the PoC.
          • da_grift_shift 46 minutes ago

                Headline: The crash is real and reproducible.
            
            ...many paragraphs later...

            https://github.com/dfoxfranke/ripgrep-3494-analysis#6-cross-...

                produced (machine from original report)
                not reproduced
                not reproduced
                not reproduced
                not reproduced
            
            Heisenbug? User environment factors? This is slop-and-dash, Brandolini's law (bullshit asymmetry).
      • rfgplk 48 minutes ago
        Why is it unreadable? I actually find LLM bug reports/breakdowns to be far more detailed and concise that classical human written ones. If you read the linked repo it clearly goes it depth where the bug was found, how to reproduce it (and in depth). Most disclosures that are human written don't do this at all, they barely even tell you _how_ to reproduce the bug. Just look at the "3.3 The self-store tear", the LLM clearly describes exactly what went wrong, so you can verify it by hand.
        • skydhash 35 minutes ago
          Because any writing needs a core intent they need to convey, which you can summarize down to according to the audience and why it should be important to them. Kinda like the same idea of elevator pitches, “explain like I’m five” and tactical reports when there’s a time constraints.

          You got none of that here. It’s just realms of text.

          • rfgplk 29 minutes ago
            Maybe the person writing the report isn't an expert in this domain or doesn't have the time to commit to it? From my point of view as long as the information is accurate and reproducible, it's valuable.
            • applfanboysbgon 18 minutes ago
              > From my point of view as long as the information is accurate

              That's the trillion-dollar catch, isn't it. LLMs love to write 30 paragraphs about some plausibly-correct-sounding explanation that is just as likely to be completely fucking wrong as it is accurate. The bug might be real, but that doesn't mean this analysis is accurate, and trying to figure out where the LLM went off the rails can be a nightmare. If you can actually understand the bug, it doesn't take 30 paragraphs to explain it. I would throw this bug report into my junk bin if I were on the receiving end of it, and I say that as someone who will spend days troubleshooting any issue a user will help me diagnose even if it only happens on their machine.

            • mi_lk 25 minutes ago
              Then where’s the lie in “soulless AI slop”?
        • walk12111 46 minutes ago
          [dead]
      • anorwell 45 minutes ago
        I had the opposite reaction. Clear, detailed, well-organized. Pretty close to the ideal writeup.
  • sligor 52 minutes ago
    So, why the bug triggers only with muslc and not other libc ?
  • sr0b0t 20 minutes ago
    [dead]
  • walk12111 47 minutes ago
    [dead]
  • rainmaking 32 minutes ago
    [flagged]
  • wild_pointer 1 hour ago
    wow, everything is broken lol