btrfs: provide enumeration for __merge_refs mode argument
authorEdmund Nadolski <enadolski@suse.com>
Thu, 16 Mar 2017 16:04:33 +0000 (10:04 -0600)
committerDavid Sterba <dsterba@suse.com>
Tue, 18 Apr 2017 12:07:25 +0000 (14:07 +0200)
Replace hardcoded numeric values for __merge_refs 'mode' argument
with descriptive constants.

Signed-off-by: Edmund Nadolski <enadolski@suse.com>
Reviewed-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/backref.c

index 116338344224c80c5071421f6833841ca522a7d8..6ce7281749a8e61154c20264eb883a60c989b863 100644 (file)
 #include "delayed-ref.h"
 #include "locking.h"
 
+enum merge_mode {
+       MERGE_IDENTICAL_KEYS = 1,
+       MERGE_IDENTICAL_PARENTS,
+};
+
 /* Just an arbitrary number so we can be sure this happened */
 #define BACKREF_FOUND_SHARED 6
 
@@ -809,14 +814,12 @@ static int __add_missing_keys(struct btrfs_fs_info *fs_info,
 /*
  * merge backrefs and adjust counts accordingly
  *
- * mode = 1: merge identical keys, if key is set
- *    FIXME: if we add more keys in __add_prelim_ref, we can merge more here.
- *           additionally, we could even add a key range for the blocks we
- *           looked into to merge even more (-> replace unresolved refs by those
- *           having a parent).
- * mode = 2: merge identical parents
+ *    FIXME: For MERGE_IDENTICAL_KEYS, if we add more keys in __add_prelim_ref
+ *           then we can merge more here. Additionally, we could even add a key
+ *           range for the blocks we looked into to merge even more (-> replace
+ *           unresolved refs by those having a parent).
  */
-static void __merge_refs(struct list_head *head, int mode)
+static void __merge_refs(struct list_head *head, enum merge_mode mode)
 {
        struct __prelim_ref *pos1;
 
@@ -829,7 +832,7 @@ static void __merge_refs(struct list_head *head, int mode)
 
                        if (!ref_for_same_block(ref1, ref2))
                                continue;
-                       if (mode == 1) {
+                       if (mode == MERGE_IDENTICAL_KEYS) {
                                if (!ref1->parent && ref2->parent)
                                        swap(ref1, ref2);
                        } else {
@@ -1374,7 +1377,7 @@ again:
        if (ret)
                goto out;
 
-       __merge_refs(&prefs, 1);
+       __merge_refs(&prefs, MERGE_IDENTICAL_KEYS);
 
        ret = __resolve_indirect_refs(fs_info, path, time_seq, &prefs,
                                      extent_item_pos, total_refs,
@@ -1382,7 +1385,7 @@ again:
        if (ret)
                goto out;
 
-       __merge_refs(&prefs, 2);
+       __merge_refs(&prefs, MERGE_IDENTICAL_PARENTS);
 
        while (!list_empty(&prefs)) {
                ref = list_first_entry(&prefs, struct __prelim_ref, list);