• Kent Overstreet's avatar
    bcachefs: Revalidate pointer to old bkey val before calling mem triggers · d13f9ee6
    Kent Overstreet authored
    We recently started stashing a copy of the key being overwritten in
    btree_insert_entry: this is helpful for avoiding multiple calls to
    bch2_btree_path_peek_slot() and bch2_journal_keys_peek() in the
    transaction commit path.
    
    But it turns out this has a problem - when we run mem/atomic triggers,
    we've done a couple things that can invalidate the pointer to the old
    key's value. This makes the optimization of stashing a pointer to the
    old value questionable, but for now this patch revalidates that pointer
    before running mem triggers.
    Signed-off-by: default avatarKent Overstreet <kent.overstreet@gmail.com>
    d13f9ee6
btree_update_leaf.c 45.1 KB