On Sep 2, 2025, at 06:42, Kent Overstreet <[email protected]> wrote:
> 
> On Sun, Aug 24, 2025 at 02:41:32AM +0800, Alan Huang wrote:
>> btree_node_read_error is duplicate of btree_node_read_err, which impacts
>> repair path if misused.
>> 
>> Signed-off-by: Alan Huang <[email protected]>
>> ---
>> fs/bcachefs/btree_io.c         | 2 +-
>> fs/bcachefs/errcode.h          | 1 -
>> fs/bcachefs/sb-errors_format.h | 2 +-
>> 3 files changed, 2 insertions(+), 3 deletions(-)
> 
> So the patch builds, but this still doesn't make sense, because
> 
>> 
>> diff --git a/fs/bcachefs/btree_io.c b/fs/bcachefs/btree_io.c
>> index 2e3dd9bacac5..3d594c4ae9d8 100644
>> --- a/fs/bcachefs/btree_io.c
>> +++ b/fs/bcachefs/btree_io.c
>> @@ -1902,7 +1902,7 @@ static int __bch2_btree_root_read(struct btree_trans 
>> *trans, enum btree_id id,
>> scoped_guard(mutex, &c->btree_cache.lock)
>> bch2_btree_node_hash_remove(&c->btree_cache, b);
>> 
>> - ret = bch_err_throw(c, btree_node_read_error);
>> + ret = bch_err_throw(c, btree_node_read_err);
> 
> this references an errcode.h error
> 
>> goto err;
>> }
>> 
>> diff --git a/fs/bcachefs/errcode.h b/fs/bcachefs/errcode.h
>> index adc1f9315eab..7106d72fca80 100644
>> --- a/fs/bcachefs/errcode.h
>> +++ b/fs/bcachefs/errcode.h
>> @@ -295,7 +295,6 @@
>> x(BCH_ERR_btree_node_read_err, btree_node_read_err_cached) \
>> x(EIO, sb_not_downgraded) \
>> x(EIO, btree_node_write_all_failed) \
>> - x(EIO, btree_node_read_error) \
> 
> which you delete
> 
>> x(EIO, btree_need_topology_repair) \
>> x(EIO, bucket_ref_update) \
>> x(EIO, trigger_alloc) \
>> diff --git a/fs/bcachefs/sb-errors_format.h b/fs/bcachefs/sb-errors_format.h
>> index aa0ea1ec9f10..483358588abc 100644
>> --- a/fs/bcachefs/sb-errors_format.h
>> +++ b/fs/bcachefs/sb-errors_format.h
>> @@ -73,7 +73,7 @@ enum bch_fsck_flags {
>> x(btree_root_read_error,  59, FSCK_AUTOFIX) \
>> x(btree_root_bad_min_key,  60, 0) \
>> x(btree_root_bad_max_key,  61, 0) \
>> - x(btree_node_read_error,  62, FSCK_AUTOFIX) \
>> + x(btree_node_read_err,    62, FSCK_AUTOFIX) \
> 
> and rename the persistent error?

The persistent error is never used, renaming it to the same as the error in 
errcode.h makes sense.

> 
>> x(btree_node_topology_bad_min_key,  63, FSCK_AUTOFIX) \
>> x(btree_node_topology_bad_max_key,  64, FSCK_AUTOFIX) \
>> x(btree_node_topology_bad_root_min_key,  323, FSCK_AUTOFIX) \
>> -- 
>> 2.49.0



Reply via email to