]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/errcode.h
Update bcachefs sources to 6d44812757dd bcachefs: BCH_IOCTL_FSCK_ONLINE
[bcachefs-tools-debian] / libbcachefs / errcode.h
index 12c0c44eb6b0338c0b20569ed24044c24e9e01e8..87c13f137db6ad7c766883c62aba74a601d79c7c 100644 (file)
@@ -3,6 +3,8 @@
 #define _BCACHEFS_ERRCODE_H
 
 #define BCH_ERRCODES()                                                         \
+       x(ERANGE,                       ERANGE_option_too_small)                \
+       x(ERANGE,                       ERANGE_option_too_big)                  \
        x(ENOMEM,                       ENOMEM_stripe_buf)                      \
        x(ENOMEM,                       ENOMEM_replicas_table)                  \
        x(ENOMEM,                       ENOMEM_cpu_replicas)                    \
@@ -71,7 +73,6 @@
        x(ENOMEM,                       ENOMEM_fsck_add_nlink)                  \
        x(ENOMEM,                       ENOMEM_journal_key_insert)              \
        x(ENOMEM,                       ENOMEM_journal_keys_sort)               \
-       x(ENOMEM,                       ENOMEM_journal_replay)                  \
        x(ENOMEM,                       ENOMEM_read_superblock_clean)           \
        x(ENOMEM,                       ENOMEM_fs_alloc)                        \
        x(ENOMEM,                       ENOMEM_fs_name_alloc)                   \
@@ -91,6 +92,7 @@
        x(ENOSPC,                       ENOSPC_sb_quota)                        \
        x(ENOSPC,                       ENOSPC_sb_replicas)                     \
        x(ENOSPC,                       ENOSPC_sb_members)                      \
+       x(ENOSPC,                       ENOSPC_sb_members_v2)                   \
        x(ENOSPC,                       ENOSPC_sb_crypt)                        \
        x(ENOSPC,                       ENOSPC_btree_slot)                      \
        x(ENOSPC,                       ENOSPC_snapshot_tree)                   \
        x(ENOENT,                       ENOENT_str_hash_set_must_replace)       \
        x(ENOENT,                       ENOENT_inode)                           \
        x(ENOENT,                       ENOENT_not_subvol)                      \
+       x(ENOENT,                       ENOENT_not_directory)                   \
        x(ENOENT,                       ENOENT_directory_dead)                  \
        x(ENOENT,                       ENOENT_subvolume)                       \
        x(ENOENT,                       ENOENT_snapshot_tree)                   \
        x(0,                            backpointer_to_overwritten_btree_node)  \
        x(0,                            lock_fail_root_changed)                 \
        x(0,                            journal_reclaim_would_deadlock)         \
-       x(0,                            fsck)                                   \
+       x(EINVAL,                       fsck)                                   \
        x(BCH_ERR_fsck,                 fsck_fix)                               \
        x(BCH_ERR_fsck,                 fsck_ignore)                            \
        x(BCH_ERR_fsck,                 fsck_errors_not_fixed)                  \
        x(BCH_ERR_fsck,                 fsck_repair_unimplemented)              \
        x(BCH_ERR_fsck,                 fsck_repair_impossible)                 \
-       x(0,                            need_snapshot_cleanup)                  \
-       x(0,                            need_topology_repair)                   \
-       x(0,                            unwritten_extent_update)                \
+       x(0,                            restart_recovery)                       \
+       x(0,                            data_update_done)                       \
        x(EINVAL,                       device_state_not_allowed)               \
        x(EINVAL,                       member_info_missing)                    \
        x(EINVAL,                       mismatched_block_size)                  \
        x(EINVAL,                       device_already_online)                  \
        x(EINVAL,                       insufficient_devices_to_start)          \
        x(EINVAL,                       invalid)                                \
+       x(EINVAL,                       internal_fsck_err)                      \
+       x(EINVAL,                       opt_parse_error)                        \
        x(EROFS,                        erofs_trans_commit)                     \
        x(EROFS,                        erofs_no_writes)                        \
        x(EROFS,                        erofs_journal_err)                      \
        x(EROFS,                        erofs_sb_err)                           \
+       x(EROFS,                        erofs_unfixed_errors)                   \
+       x(EROFS,                        erofs_norecovery)                       \
+       x(EROFS,                        erofs_nochanges)                        \
        x(EROFS,                        insufficient_devices)                   \
        x(0,                            operation_blocked)                      \
        x(BCH_ERR_operation_blocked,    btree_cache_cannibalize_lock_blocked)   \
        x(BCH_ERR_invalid_sb,           invalid_sb_members)                     \
        x(BCH_ERR_invalid_sb,           invalid_sb_disk_groups)                 \
        x(BCH_ERR_invalid_sb,           invalid_sb_replicas)                    \
+       x(BCH_ERR_invalid_sb,           invalid_replicas_entry)                 \
        x(BCH_ERR_invalid_sb,           invalid_sb_journal)                     \
        x(BCH_ERR_invalid_sb,           invalid_sb_journal_seq_blacklist)       \
        x(BCH_ERR_invalid_sb,           invalid_sb_crypt)                       \
        x(BCH_ERR_invalid_sb,           invalid_sb_clean)                       \
        x(BCH_ERR_invalid_sb,           invalid_sb_quota)                       \
+       x(BCH_ERR_invalid_sb,           invalid_sb_errors)                      \
+       x(BCH_ERR_invalid_sb,           invalid_sb_opt_compression)             \
        x(BCH_ERR_invalid,              invalid_bkey)                           \
        x(BCH_ERR_operation_blocked,    nocow_lock_blocked)                     \
+       x(EIO,                          btree_node_read_err)                    \
+       x(BCH_ERR_btree_node_read_err,  btree_node_read_err_fixable)            \
+       x(BCH_ERR_btree_node_read_err,  btree_node_read_err_want_retry)         \
+       x(BCH_ERR_btree_node_read_err,  btree_node_read_err_must_retry)         \
+       x(BCH_ERR_btree_node_read_err,  btree_node_read_err_bad_node)           \
+       x(BCH_ERR_btree_node_read_err,  btree_node_read_err_incompatible)       \
+       x(0,                            nopromote)                              \
+       x(BCH_ERR_nopromote,            nopromote_may_not)                      \
+       x(BCH_ERR_nopromote,            nopromote_already_promoted)             \
+       x(BCH_ERR_nopromote,            nopromote_unwritten)                    \
+       x(BCH_ERR_nopromote,            nopromote_congested)                    \
+       x(BCH_ERR_nopromote,            nopromote_in_flight)                    \
+       x(BCH_ERR_nopromote,            nopromote_enomem)
 
 enum bch_errcode {
        BCH_ERR_START           = 2048,
@@ -224,7 +247,7 @@ bool __bch2_err_matches(int, int);
 
 static inline bool _bch2_err_matches(int err, int class)
 {
-       return err && __bch2_err_matches(err, class);
+       return err < 0 && __bch2_err_matches(err, class);
 }
 
 #define bch2_err_matches(_err, _class)                 \
@@ -240,4 +263,8 @@ static inline long bch2_err_class(long err)
        return err < 0 ? __bch2_err_class(err) : err;
 }
 
+#define BLK_STS_REMOVED                ((__force blk_status_t)128)
+
+const char *bch2_blk_status_to_str(blk_status_t);
+
 #endif /* _BCACHFES_ERRCODE_H */