* [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test
@ 2022-02-01 17:17 Catherine Hoang
2022-02-01 17:17 ` [RFC PATCH v3 1/2] xfsprogs: add leaf split error tag Catherine Hoang
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Catherine Hoang @ 2022-02-01 17:17 UTC (permalink / raw)
To: linux-xfs
Hi all,
These are the corresponding userspace changes for the new log attribute
replay test. These are built on top of Allison’s logged attribute patch
sets, which can be viewed here:
https://github.com/allisonhenderson/xfs_work/tree/delayed_attrs_xfsprogs_v26_extended
This set adds the new error tags da_leaf_split and larp_leaf_to_node,
which are used to inject errors in the tests.
v2->v3:
Rename larp_leaf_split to da_leaf_split
Suggestions and feedback are appreciated!
Catherine
Catherine Hoang (2):
xfsprogs: add leaf split error tag
xfsprogs: add leaf to node error tag
io/inject.c | 2 ++
libxfs/xfs_attr_leaf.c | 5 +++++
libxfs/xfs_da_btree.c | 3 +++
libxfs/xfs_errortag.h | 6 +++++-
4 files changed, 15 insertions(+), 1 deletion(-)
--
2.25.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [RFC PATCH v3 1/2] xfsprogs: add leaf split error tag
2022-02-01 17:17 [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Catherine Hoang
@ 2022-02-01 17:17 ` Catherine Hoang
2022-02-01 17:17 ` [RFC PATCH v3 2/2] xfsprogs: add leaf to node " Catherine Hoang
2022-02-01 20:06 ` [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Darrick J. Wong
2 siblings, 0 replies; 5+ messages in thread
From: Catherine Hoang @ 2022-02-01 17:17 UTC (permalink / raw)
To: linux-xfs
Add an error tag on xfs_da3_split to test log attribute recovery
and replay.
Signed-off-by: Catherine Hoang <catherine.hoang@oracle.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
---
io/inject.c | 1 +
libxfs/xfs_da_btree.c | 3 +++
libxfs/xfs_errortag.h | 4 +++-
3 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/io/inject.c b/io/inject.c
index 43b51db5..a7ad4df4 100644
--- a/io/inject.c
+++ b/io/inject.c
@@ -59,6 +59,7 @@ error_tag(char *name)
{ XFS_ERRTAG_BMAP_ALLOC_MINLEN_EXTENT, "bmap_alloc_minlen_extent" },
{ XFS_ERRTAG_AG_RESV_FAIL, "ag_resv_fail" },
{ XFS_ERRTAG_LARP, "larp" },
+ { XFS_ERRTAG_DA_LEAF_SPLIT, "da_leaf_split" },
{ XFS_ERRTAG_MAX, NULL }
};
int count;
diff --git a/libxfs/xfs_da_btree.c b/libxfs/xfs_da_btree.c
index f4e1fe80..6474f6cd 100644
--- a/libxfs/xfs_da_btree.c
+++ b/libxfs/xfs_da_btree.c
@@ -479,6 +479,9 @@ xfs_da3_split(
trace_xfs_da_split(state->args);
+ if (XFS_TEST_ERROR(false, state->mp, XFS_ERRTAG_DA_LEAF_SPLIT))
+ return -EIO;
+
/*
* Walk back up the tree splitting/inserting/adjusting as necessary.
* If we need to insert and there isn't room, split the node, then
diff --git a/libxfs/xfs_errortag.h b/libxfs/xfs_errortag.h
index c15d2340..6d06a502 100644
--- a/libxfs/xfs_errortag.h
+++ b/libxfs/xfs_errortag.h
@@ -60,7 +60,8 @@
#define XFS_ERRTAG_BMAP_ALLOC_MINLEN_EXTENT 37
#define XFS_ERRTAG_AG_RESV_FAIL 38
#define XFS_ERRTAG_LARP 39
-#define XFS_ERRTAG_MAX 40
+#define XFS_ERRTAG_DA_LEAF_SPLIT 40
+#define XFS_ERRTAG_MAX 41
/*
* Random factors for above tags, 1 means always, 2 means 1/2 time, etc.
@@ -105,5 +106,6 @@
#define XFS_RANDOM_BMAP_ALLOC_MINLEN_EXTENT 1
#define XFS_RANDOM_AG_RESV_FAIL 1
#define XFS_RANDOM_LARP 1
+#define XFS_RANDOM_DA_LEAF_SPLIT 1
#endif /* __XFS_ERRORTAG_H_ */
--
2.25.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [RFC PATCH v3 2/2] xfsprogs: add leaf to node error tag
2022-02-01 17:17 [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Catherine Hoang
2022-02-01 17:17 ` [RFC PATCH v3 1/2] xfsprogs: add leaf split error tag Catherine Hoang
@ 2022-02-01 17:17 ` Catherine Hoang
2022-02-01 20:06 ` [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Darrick J. Wong
2 siblings, 0 replies; 5+ messages in thread
From: Catherine Hoang @ 2022-02-01 17:17 UTC (permalink / raw)
To: linux-xfs
Add an error tag on xfs_attr3_leaf_to_node to test log attribute
recovery and replay.
Signed-off-by: Catherine Hoang <catherine.hoang@oracle.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
---
io/inject.c | 1 +
libxfs/xfs_attr_leaf.c | 5 +++++
libxfs/xfs_errortag.h | 4 +++-
3 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/io/inject.c b/io/inject.c
index a7ad4df4..c211fcbc 100644
--- a/io/inject.c
+++ b/io/inject.c
@@ -60,6 +60,7 @@ error_tag(char *name)
{ XFS_ERRTAG_AG_RESV_FAIL, "ag_resv_fail" },
{ XFS_ERRTAG_LARP, "larp" },
{ XFS_ERRTAG_DA_LEAF_SPLIT, "da_leaf_split" },
+ { XFS_ERRTAG_LARP_LEAF_TO_NODE, "larp_leaf_to_node" },
{ XFS_ERRTAG_MAX, NULL }
};
int count;
diff --git a/libxfs/xfs_attr_leaf.c b/libxfs/xfs_attr_leaf.c
index 6c0997c5..0f40a1ec 100644
--- a/libxfs/xfs_attr_leaf.c
+++ b/libxfs/xfs_attr_leaf.c
@@ -1181,6 +1181,11 @@ xfs_attr3_leaf_to_node(
trace_xfs_attr_leaf_to_node(args);
+ if (XFS_TEST_ERROR(false, mp, XFS_ERRTAG_LARP_LEAF_TO_NODE)) {
+ error = -EIO;
+ goto out;
+ }
+
error = xfs_da_grow_inode(args, &blkno);
if (error)
goto out;
diff --git a/libxfs/xfs_errortag.h b/libxfs/xfs_errortag.h
index 6d06a502..74b75319 100644
--- a/libxfs/xfs_errortag.h
+++ b/libxfs/xfs_errortag.h
@@ -61,7 +61,8 @@
#define XFS_ERRTAG_AG_RESV_FAIL 38
#define XFS_ERRTAG_LARP 39
#define XFS_ERRTAG_DA_LEAF_SPLIT 40
-#define XFS_ERRTAG_MAX 41
+#define XFS_ERRTAG_LARP_LEAF_TO_NODE 41
+#define XFS_ERRTAG_MAX 42
/*
* Random factors for above tags, 1 means always, 2 means 1/2 time, etc.
@@ -107,5 +108,6 @@
#define XFS_RANDOM_AG_RESV_FAIL 1
#define XFS_RANDOM_LARP 1
#define XFS_RANDOM_DA_LEAF_SPLIT 1
+#define XFS_RANDOM_LARP_LEAF_TO_NODE 1
#endif /* __XFS_ERRORTAG_H_ */
--
2.25.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test
2022-02-01 17:17 [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Catherine Hoang
2022-02-01 17:17 ` [RFC PATCH v3 1/2] xfsprogs: add leaf split error tag Catherine Hoang
2022-02-01 17:17 ` [RFC PATCH v3 2/2] xfsprogs: add leaf to node " Catherine Hoang
@ 2022-02-01 20:06 ` Darrick J. Wong
2022-02-01 22:05 ` Catherine Hoang
2 siblings, 1 reply; 5+ messages in thread
From: Darrick J. Wong @ 2022-02-01 20:06 UTC (permalink / raw)
To: Catherine Hoang; +Cc: linux-xfs
On Tue, Feb 01, 2022 at 05:17:53PM +0000, Catherine Hoang wrote:
> Hi all,
>
> These are the corresponding userspace changes for the new log attribute
> replay test. These are built on top of Allison’s logged attribute patch
> sets, which can be viewed here:
> https://github.com/allisonhenderson/xfs_work/tree/delayed_attrs_xfsprogs_v26_extended
>
> This set adds the new error tags da_leaf_split and larp_leaf_to_node,
> which are used to inject errors in the tests.
>
> v2->v3:
> Rename larp_leaf_split to da_leaf_split
With the XFS_ERRTAG_LARP_LEAF_TO_NODE -> XFS_ERRTAG_ATTR_LEAF_TO_NODE
change made, you can add:
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
For the whole series.
--D
>
> Suggestions and feedback are appreciated!
>
> Catherine
>
>
> Catherine Hoang (2):
> xfsprogs: add leaf split error tag
> xfsprogs: add leaf to node error tag
>
> io/inject.c | 2 ++
> libxfs/xfs_attr_leaf.c | 5 +++++
> libxfs/xfs_da_btree.c | 3 +++
> libxfs/xfs_errortag.h | 6 +++++-
> 4 files changed, 15 insertions(+), 1 deletion(-)
>
> --
> 2.25.1
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test
2022-02-01 20:06 ` [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Darrick J. Wong
@ 2022-02-01 22:05 ` Catherine Hoang
0 siblings, 0 replies; 5+ messages in thread
From: Catherine Hoang @ 2022-02-01 22:05 UTC (permalink / raw)
To: Darrick J. Wong; +Cc: linux-xfs
> On Feb 1, 2022, at 12:06 PM, Darrick J. Wong <djwong@kernel.org> wrote:
>
> On Tue, Feb 01, 2022 at 05:17:53PM +0000, Catherine Hoang wrote:
>> Hi all,
>>
>> These are the corresponding userspace changes for the new log attribute
>> replay test. These are built on top of Allison’s logged attribute patch
>> sets, which can be viewed here:
>> https://urldefense.com/v3/__https://github.com/allisonhenderson/xfs_work/tree/delayed_attrs_xfsprogs_v26_extended__;!!ACWV5N9M2RV99hQ!e2WVNIakDohiZPdPKi-YzSjukd97AcL-PAGBteXwqTgvz2mtn0jADrAQbq-Js7j8A1E$
>>
>> This set adds the new error tags da_leaf_split and larp_leaf_to_node,
>> which are used to inject errors in the tests.
>>
>> v2->v3:
>> Rename larp_leaf_split to da_leaf_split
>
> With the XFS_ERRTAG_LARP_LEAF_TO_NODE -> XFS_ERRTAG_ATTR_LEAF_TO_NODE
> change made, you can add:
>
> Reviewed-by: Darrick J. Wong <djwong@kernel.org>
>
> For the whole series.
>
> --D
Sure, will change that. Thanks!
>
>>
>> Suggestions and feedback are appreciated!
>>
>> Catherine
>>
>>
>> Catherine Hoang (2):
>> xfsprogs: add leaf split error tag
>> xfsprogs: add leaf to node error tag
>>
>> io/inject.c | 2 ++
>> libxfs/xfs_attr_leaf.c | 5 +++++
>> libxfs/xfs_da_btree.c | 3 +++
>> libxfs/xfs_errortag.h | 6 +++++-
>> 4 files changed, 15 insertions(+), 1 deletion(-)
>>
>> --
>> 2.25.1
>>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-02-01 22:05 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-01 17:17 [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Catherine Hoang
2022-02-01 17:17 ` [RFC PATCH v3 1/2] xfsprogs: add leaf split error tag Catherine Hoang
2022-02-01 17:17 ` [RFC PATCH v3 2/2] xfsprogs: add leaf to node " Catherine Hoang
2022-02-01 20:06 ` [RFC PATCH v3 0/2] xfsprogs: add error tags for log attribute replay test Darrick J. Wong
2022-02-01 22:05 ` Catherine Hoang
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.