On Wed, Sep 18, 2024 at 11:28:52AM +0200, Chris Mason wrote: > I think the bug was in __filemap_add_folio()'s usage of xarray_split_alloc() > and the tree changing before taking the lock. It's just a guess, but that > was always my biggest suspect. Oh god, that's it. there should have been an xas_reset() after calling xas_split_alloc(). and 6758c1128ceb calls xas_reset() after calling xas_split_alloc(). i wonder if xas_split_alloc() should call xas_reset() to prevent this from ever being a problem again?