File tree Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -400,6 +400,13 @@ int bch2_check_btree_backpointers(struct bch_fs *c)
400
400
return ret ;
401
401
}
402
402
403
+ static inline bool bkey_and_val_eq (struct bkey_s_c l , struct bkey_s_c r )
404
+ {
405
+ return bpos_eq (l .k -> p , r .k -> p ) &&
406
+ bkey_bytes (l .k ) == bkey_bytes (r .k ) &&
407
+ !memcmp (l .v , r .v , bkey_val_bytes (l .k ));
408
+ }
409
+
403
410
static int check_bp_exists (struct btree_trans * trans ,
404
411
struct bpos bucket ,
405
412
struct bch_backpointer bp ,
@@ -433,9 +440,7 @@ static int check_bp_exists(struct btree_trans *trans,
433
440
434
441
if (bp_k .k -> type != KEY_TYPE_backpointer ||
435
442
memcmp (bkey_s_c_to_backpointer (bp_k ).v , & bp , sizeof (bp ))) {
436
- if (!bpos_eq (orig_k .k -> p , last_flushed -> k -> k .p ) ||
437
- bkey_bytes (orig_k .k ) != bkey_bytes (& last_flushed -> k -> k ) ||
438
- memcmp (orig_k .v , & last_flushed -> k -> v , bkey_val_bytes (orig_k .k ))) {
443
+ if (!bkey_and_val_eq (orig_k , bkey_i_to_s_c (last_flushed -> k ))) {
439
444
bch2_bkey_buf_reassemble (& tmp , c , orig_k );
440
445
441
446
if (bp .level ) {
You can’t perform that action at this time.
0 commit comments