• Kent Overstreet's avatar
    bcachefs: Disable merges from interior update path · 3f100489
    Kent Overstreet authored
    
    
    There's been a bug in the btree write buffer where it wasn't triggering
    btree node merges - and leaving behind a bunch of nearly empty btree
    nodes.
    
    Then during journal replay, when updates to the backpointers btree
    aren't using the btree write buffer (because we require synchronization
    with journal replay), we end up doing those merges all at once.
    
    Then if it's the interior update path running them, we deadlock because
    those run with the highest watermark.
    
    There's no real need for the interior update path to be doing btree node
    merges; other code paths can handle that at lower watermarks.
    Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
    3f100489
btree_update_interior.c 72.5 KB