btrfs-progs: check: Move node_refs structure to check/common.h
authorQu Wenruo <wqu@suse.com>
Thu, 18 Jan 2018 05:52:16 +0000 (13:52 +0800)
committerDavid Sterba <dsterba@suse.com>
Fri, 2 Feb 2018 15:01:58 +0000 (16:01 +0100)
Reviewed-by: Su Yue <suy.fnst@cn.fujitsu.com>
Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
check/common.h [new file with mode: 0644]
check/main.c

diff --git a/check/common.h b/check/common.h
new file mode 100644 (file)
index 0000000..25874ae
--- /dev/null
@@ -0,0 +1,39 @@
+/*
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public
+ * License v2 as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 021110-1307, USA.
+ */
+
+/*
+ * Defines and function declarations for code shared by both lowmem and
+ * original mode
+ */
+#ifndef __BTRFS_CHECK_COMMON_H__
+#define __BTRFS_CHECK_COMMON_H__
+#include "ctree.h"
+
+/*
+ * Use for tree walk to walk through trees whose leaves/nodes can be shared
+ * between different trees. (Namely subvolume/fs trees)
+ */
+struct node_refs {
+       u64 bytenr[BTRFS_MAX_LEVEL];
+       u64 refs[BTRFS_MAX_LEVEL];
+       int need_check[BTRFS_MAX_LEVEL];
+       /* field for checking all trees */
+       int checked[BTRFS_MAX_LEVEL];
+       /* the corresponding extent should be marked as full backref or not */
+       int full_backref[BTRFS_MAX_LEVEL];
+};
+
+#endif
index 55e0471..cb3eef7 100644 (file)
@@ -45,6 +45,7 @@
 #include "help.h"
 #include "check/original.h"
 #include "check/lowmem.h"
+#include "check/common.h"
 
 enum task_position {
        TASK_EXTENTS,
@@ -1668,16 +1669,6 @@ static int process_one_leaf(struct btrfs_root *root, struct extent_buffer *eb,
        return ret;
 }
 
-struct node_refs {
-       u64 bytenr[BTRFS_MAX_LEVEL];
-       u64 refs[BTRFS_MAX_LEVEL];
-       int need_check[BTRFS_MAX_LEVEL];
-       /* field for checking all trees */
-       int checked[BTRFS_MAX_LEVEL];
-       /* the corresponding extent should be marked as full backref or not */
-       int full_backref[BTRFS_MAX_LEVEL];
-};
-
 static int update_nodes_refs(struct btrfs_root *root, u64 bytenr,
                             struct extent_buffer *eb, struct node_refs *nrefs,
                             u64 level, int check_all);