btrfs: tree-checker: Allow error injection for tree-checker
authorQu Wenruo <wqu@suse.com>
Wed, 24 Apr 2019 07:22:53 +0000 (15:22 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 29 Apr 2019 17:02:52 +0000 (19:02 +0200)
Allowing error injection for btrfs_check_leaf_full() and
btrfs_check_node() is useful to test the failure path of btrfs write
time tree check.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/tree-checker.c

index 32eeee5ec497f953987ec73d6429e67302b20318..748cd1598255ac4c4fd79562f84b2a2cdcefce3c 100644 (file)
@@ -15,6 +15,9 @@
  * carefully reviewed otherwise so it does not prevent mount of valid images.
  */
 
+#include <linux/types.h>
+#include <linux/stddef.h>
+#include <linux/error-injection.h>
 #include "ctree.h"
 #include "tree-checker.h"
 #include "disk-io.h"
@@ -942,6 +945,7 @@ int btrfs_check_leaf_full(struct extent_buffer *leaf)
 {
        return check_leaf(leaf, true);
 }
+ALLOW_ERROR_INJECTION(btrfs_check_leaf_full, ERRNO);
 
 int btrfs_check_leaf_relaxed(struct extent_buffer *leaf)
 {
@@ -1005,3 +1009,4 @@ int btrfs_check_node(struct extent_buffer *node)
 out:
        return ret;
 }
+ALLOW_ERROR_INJECTION(btrfs_check_node, ERRNO);