bcachefs: Fix assertion pop in bch2_ptr_swab()
This runs on extents that haven't yet been validated, so we don't want to assert that we have a valid entry type. Reported-by: syzbot+4f29c3f12f864d8a8d17@syzkaller.appspotmail.com Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
This commit is contained in:
parent
657d4282d8
commit
840c2fbcc5
@ -1364,7 +1364,7 @@ void bch2_ptr_swab(struct bkey_s k)
|
|||||||
for (entry = ptrs.start;
|
for (entry = ptrs.start;
|
||||||
entry < ptrs.end;
|
entry < ptrs.end;
|
||||||
entry = extent_entry_next(entry)) {
|
entry = extent_entry_next(entry)) {
|
||||||
switch (extent_entry_type(entry)) {
|
switch (__extent_entry_type(entry)) {
|
||||||
case BCH_EXTENT_ENTRY_ptr:
|
case BCH_EXTENT_ENTRY_ptr:
|
||||||
break;
|
break;
|
||||||
case BCH_EXTENT_ENTRY_crc32:
|
case BCH_EXTENT_ENTRY_crc32:
|
||||||
@ -1384,6 +1384,9 @@ void bch2_ptr_swab(struct bkey_s k)
|
|||||||
break;
|
break;
|
||||||
case BCH_EXTENT_ENTRY_rebalance:
|
case BCH_EXTENT_ENTRY_rebalance:
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
/* Bad entry type: will be caught by validate() */
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user