* [PATCH 0/3] Cleanups around extent increment
@ 2018-06-18 11:59 Nikolay Borisov
2018-06-18 11:59 ` [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref Nikolay Borisov
` (3 more replies)
0 siblings, 4 replies; 10+ messages in thread
From: Nikolay Borisov @ 2018-06-18 11:59 UTC (permalink / raw)
To: linux-btrfs; +Cc: jeffm, Nikolay Borisov
Hello,
This series improves the functions involved around extent reference increment.
The first patch just removes a redundant argument, the second one documents the
parameters of __btrfs_inc_extent_ref. It can be considered v2 of the standalone
version which Jeff had some input to. The final patch fixes a comment in
lookup_inline_extent_backref which transpired while Jeff was revieweing the
documentation patch.
Nikolay Borisov (3):
btrfs: Remove fs_info argument from __btrfs_inc_extent_ref
btrfs: Document __btrfs_inc_extent_ref
btrfs: Fix comment in lookup_inline_extent_backref
fs/btrfs/extent-tree.c | 51 ++++++++++++++++++++++++++++++++++++++++----------
1 file changed, 41 insertions(+), 10 deletions(-)
--
2.7.4
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref
2018-06-18 11:59 [PATCH 0/3] Cleanups around extent increment Nikolay Borisov
@ 2018-06-18 11:59 ` Nikolay Borisov
2018-06-19 5:24 ` Qu Wenruo
` (2 more replies)
2018-06-18 11:59 ` [PATCH 2/3] btrfs: Document __btrfs_inc_extent_ref Nikolay Borisov
` (2 subsequent siblings)
3 siblings, 3 replies; 10+ messages in thread
From: Nikolay Borisov @ 2018-06-18 11:59 UTC (permalink / raw)
To: linux-btrfs; +Cc: jeffm, Nikolay Borisov
This function already takes a transaction which holds a reference to
the fs_info struct. Use that reference and remove the extra arg. No
functional changes.
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
---
fs/btrfs/extent-tree.c | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 4850e538ab10..59645ced6fbc 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -2208,12 +2208,12 @@ int btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
}
static int __btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
- struct btrfs_fs_info *fs_info,
struct btrfs_delayed_ref_node *node,
u64 parent, u64 root_objectid,
u64 owner, u64 offset, int refs_to_add,
struct btrfs_delayed_extent_op *extent_op)
{
+ struct btrfs_fs_info *fs_info = trans->fs_info;
struct btrfs_path *path;
struct extent_buffer *leaf;
struct btrfs_extent_item *item;
@@ -2297,10 +2297,9 @@ static int run_delayed_data_ref(struct btrfs_trans_handle *trans,
ref->objectid, ref->offset,
&ins, node->ref_mod);
} else if (node->action == BTRFS_ADD_DELAYED_REF) {
- ret = __btrfs_inc_extent_ref(trans, fs_info, node, parent,
- ref_root, ref->objectid,
- ref->offset, node->ref_mod,
- extent_op);
+ ret = __btrfs_inc_extent_ref(trans, node, parent, ref_root,
+ ref->objectid, ref->offset,
+ node->ref_mod, extent_op);
} else if (node->action == BTRFS_DROP_DELAYED_REF) {
ret = __btrfs_free_extent(trans, fs_info, node, parent,
ref_root, ref->objectid,
@@ -2450,10 +2449,8 @@ static int run_delayed_tree_ref(struct btrfs_trans_handle *trans,
BUG_ON(!extent_op || !extent_op->update_flags);
ret = alloc_reserved_tree_block(trans, node, extent_op);
} else if (node->action == BTRFS_ADD_DELAYED_REF) {
- ret = __btrfs_inc_extent_ref(trans, fs_info, node,
- parent, ref_root,
- ref->level, 0, 1,
- extent_op);
+ ret = __btrfs_inc_extent_ref(trans, node, parent, ref_root,
+ ref->level, 0, 1, extent_op);
} else if (node->action == BTRFS_DROP_DELAYED_REF) {
ret = __btrfs_free_extent(trans, fs_info, node,
parent, ref_root,
--
2.7.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/3] btrfs: Document __btrfs_inc_extent_ref
2018-06-18 11:59 [PATCH 0/3] Cleanups around extent increment Nikolay Borisov
2018-06-18 11:59 ` [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref Nikolay Borisov
@ 2018-06-18 11:59 ` Nikolay Borisov
2018-06-19 5:28 ` Qu Wenruo
2018-06-18 11:59 ` [PATCH 3/3] btrfs: Fix comment in lookup_inline_extent_backref Nikolay Borisov
2018-06-19 13:35 ` [PATCH 0/3] Cleanups around extent increment David Sterba
3 siblings, 1 reply; 10+ messages in thread
From: Nikolay Borisov @ 2018-06-18 11:59 UTC (permalink / raw)
To: linux-btrfs; +Cc: jeffm, Nikolay Borisov
Here is a doc-only patch which tires to deobfuscate the terra-incognita
that arguments for delayed refs are.
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
---
fs/btrfs/extent-tree.c | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 59645ced6fbc..39d0652bf3f3 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -2207,6 +2207,40 @@ int btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
return ret;
}
+/*
+ * __btrfs_inc_extent_ref - insert backreference for a given extent
+ *
+ * @trans: Handle of transaction
+ *
+ * @node: The delayed ref node used to get the bytenr/length for
+ * extent whose references are incremented.
+ *
+ * @parent: If this is a shared extent (BTRFS_SHARED_DATA_REF_KEY/
+ * BTRFS_SHARED_BLOCK_REF_KEY) then it holds the logical
+ * bytenr of the parent block. Since new extents are always
+ * created with indirect references, this will only be the case
+ * when relocating a shared extent. In that case, root_objectid
+ * will be BTRFS_TREE_RELOC_OBJECTID. Otheriwse, parent must
+ * be 0
+ *
+ * @root_objectid: The id of the root where this modification has originated,
+ * this can be either one of the well-known metadata trees or
+ * the subvolume id which references this extent.
+ *
+ * @owner: For data extents it is the inode number of the owning file.
+ * For metadata extents this parameter holds the level in the
+ * tree of the extent.
+ *
+ * @offset: For metadata extents the offset is ignored and is currently
+ * always passed as 0. For data extents it is the fileoffset
+ * this extent belongs to.
+ *
+ * @refs_to_add Number of references to add
+ *
+ * @extent_op Pointer to a structure, holding information necessary when
+ * updating a tree block's flags
+ *
+ */
static int __btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
struct btrfs_delayed_ref_node *node,
u64 parent, u64 root_objectid,
--
2.7.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 3/3] btrfs: Fix comment in lookup_inline_extent_backref
2018-06-18 11:59 [PATCH 0/3] Cleanups around extent increment Nikolay Borisov
2018-06-18 11:59 ` [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref Nikolay Borisov
2018-06-18 11:59 ` [PATCH 2/3] btrfs: Document __btrfs_inc_extent_ref Nikolay Borisov
@ 2018-06-18 11:59 ` Nikolay Borisov
2018-06-19 13:35 ` [PATCH 0/3] Cleanups around extent increment David Sterba
3 siblings, 0 replies; 10+ messages in thread
From: Nikolay Borisov @ 2018-06-18 11:59 UTC (permalink / raw)
To: linux-btrfs; +Cc: jeffm, Nikolay Borisov
The comment wrongfully states that the owner parameter is the level of
the parent block. In fact owner is the level of the current block and
by adding 1 to it we can eventually get to the parent/root.
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
---
fs/btrfs/extent-tree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 39d0652bf3f3..a470a07d4f2a 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -1635,7 +1635,7 @@ int lookup_inline_extent_backref(struct btrfs_trans_handle *trans,
extra_size = -1;
/*
- * Owner is our parent level, so we can just add one to get the level
+ * Owner is our level, so we can just add one to get the level
* for the block we are interested in.
*/
if (skinny_metadata && owner < BTRFS_FIRST_FREE_OBJECTID) {
--
2.7.4
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref
2018-06-18 11:59 ` [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref Nikolay Borisov
@ 2018-06-19 5:24 ` Qu Wenruo
2018-06-19 13:01 ` Nikolay Borisov
2018-06-19 19:31 ` Jeff Mahoney
2 siblings, 0 replies; 10+ messages in thread
From: Qu Wenruo @ 2018-06-19 5:24 UTC (permalink / raw)
To: Nikolay Borisov, linux-btrfs; +Cc: jeffm
On 2018年06月18日 19:59, Nikolay Borisov wrote:
> This function already takes a transaction which holds a reference to
> the fs_info struct. Use that reference and remove the extra arg. No
> functional changes.
>
> Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Thanks,
Qu
> ---
> fs/btrfs/extent-tree.c | 15 ++++++---------
> 1 file changed, 6 insertions(+), 9 deletions(-)
>
> diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
> index 4850e538ab10..59645ced6fbc 100644
> --- a/fs/btrfs/extent-tree.c
> +++ b/fs/btrfs/extent-tree.c
> @@ -2208,12 +2208,12 @@ int btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
> }
>
> static int __btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
> - struct btrfs_fs_info *fs_info,
> struct btrfs_delayed_ref_node *node,
> u64 parent, u64 root_objectid,
> u64 owner, u64 offset, int refs_to_add,
> struct btrfs_delayed_extent_op *extent_op)
> {
> + struct btrfs_fs_info *fs_info = trans->fs_info;
> struct btrfs_path *path;
> struct extent_buffer *leaf;
> struct btrfs_extent_item *item;
> @@ -2297,10 +2297,9 @@ static int run_delayed_data_ref(struct btrfs_trans_handle *trans,
> ref->objectid, ref->offset,
> &ins, node->ref_mod);
> } else if (node->action == BTRFS_ADD_DELAYED_REF) {
> - ret = __btrfs_inc_extent_ref(trans, fs_info, node, parent,
> - ref_root, ref->objectid,
> - ref->offset, node->ref_mod,
> - extent_op);
> + ret = __btrfs_inc_extent_ref(trans, node, parent, ref_root,
> + ref->objectid, ref->offset,
> + node->ref_mod, extent_op);
> } else if (node->action == BTRFS_DROP_DELAYED_REF) {
> ret = __btrfs_free_extent(trans, fs_info, node, parent,
> ref_root, ref->objectid,
> @@ -2450,10 +2449,8 @@ static int run_delayed_tree_ref(struct btrfs_trans_handle *trans,
> BUG_ON(!extent_op || !extent_op->update_flags);
> ret = alloc_reserved_tree_block(trans, node, extent_op);
> } else if (node->action == BTRFS_ADD_DELAYED_REF) {
> - ret = __btrfs_inc_extent_ref(trans, fs_info, node,
> - parent, ref_root,
> - ref->level, 0, 1,
> - extent_op);
> + ret = __btrfs_inc_extent_ref(trans, node, parent, ref_root,
> + ref->level, 0, 1, extent_op);
> } else if (node->action == BTRFS_DROP_DELAYED_REF) {
> ret = __btrfs_free_extent(trans, fs_info, node,
> parent, ref_root,
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/3] btrfs: Document __btrfs_inc_extent_ref
2018-06-18 11:59 ` [PATCH 2/3] btrfs: Document __btrfs_inc_extent_ref Nikolay Borisov
@ 2018-06-19 5:28 ` Qu Wenruo
0 siblings, 0 replies; 10+ messages in thread
From: Qu Wenruo @ 2018-06-19 5:28 UTC (permalink / raw)
To: Nikolay Borisov, linux-btrfs; +Cc: jeffm
On 2018年06月18日 19:59, Nikolay Borisov wrote:
> Here is a doc-only patch which tires to deobfuscate the terra-incognita
> that arguments for delayed refs are.
>
> Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
> ---
> fs/btrfs/extent-tree.c | 34 ++++++++++++++++++++++++++++++++++
> 1 file changed, 34 insertions(+)
>
> diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
> index 59645ced6fbc..39d0652bf3f3 100644
> --- a/fs/btrfs/extent-tree.c
> +++ b/fs/btrfs/extent-tree.c
> @@ -2207,6 +2207,40 @@ int btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
> return ret;
> }
>
> +/*
> + * __btrfs_inc_extent_ref - insert backreference for a given extent
> + *
> + * @trans: Handle of transaction
> + *
> + * @node: The delayed ref node used to get the bytenr/length for
> + * extent whose references are incremented.
> + *
> + * @parent: If this is a shared extent (BTRFS_SHARED_DATA_REF_KEY/
> + * BTRFS_SHARED_BLOCK_REF_KEY) then it holds the logical
> + * bytenr of the parent block. Since new extents are always
> + * created with indirect references, this will only be the case
> + * when relocating a shared extent. In that case, root_objectid
> + * will be BTRFS_TREE_RELOC_OBJECTID. Otheriwse, parent must
> + * be 0
> + *
> + * @root_objectid: The id of the root where this modification has originated,
> + * this can be either one of the well-known metadata trees or
> + * the subvolume id which references this extent.
> + *
> + * @owner: For data extents it is the inode number of the owning file.
> + * For metadata extents this parameter holds the level in the
> + * tree of the extent.
@owner the naming itself is a little confusing, but it's the necessary evil.
Or we will have too many parameters.
Thanks,
Qu
> + *
> + * @offset: For metadata extents the offset is ignored and is currently
> + * always passed as 0. For data extents it is the fileoffset
> + * this extent belongs to.
> + *
> + * @refs_to_add Number of references to add
> + *
> + * @extent_op Pointer to a structure, holding information necessary when
> + * updating a tree block's flags
> + *
> + */
> static int __btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
> struct btrfs_delayed_ref_node *node,
> u64 parent, u64 root_objectid,
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref
2018-06-18 11:59 ` [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref Nikolay Borisov
2018-06-19 5:24 ` Qu Wenruo
@ 2018-06-19 13:01 ` Nikolay Borisov
2018-06-19 19:31 ` Jeff Mahoney
2 siblings, 0 replies; 10+ messages in thread
From: Nikolay Borisov @ 2018-06-19 13:01 UTC (permalink / raw)
To: linux-btrfs
On 18.06.2018 14:59, Nikolay Borisov wrote:
> This function already takes a transaction which holds a reference to
> the fs_info struct. Use that reference and remove the extra arg. No
> functional changes.
>
> Signed-off-by: Nikolay Borisov <nborisov@suse.com>
> ---
Please ignore this patch, since I'm going to re-send it as apart of a
larger series dealing specifically with fs_info cleanup. The other 2 are
good.
<snip>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/3] Cleanups around extent increment
2018-06-18 11:59 [PATCH 0/3] Cleanups around extent increment Nikolay Borisov
` (2 preceding siblings ...)
2018-06-18 11:59 ` [PATCH 3/3] btrfs: Fix comment in lookup_inline_extent_backref Nikolay Borisov
@ 2018-06-19 13:35 ` David Sterba
3 siblings, 0 replies; 10+ messages in thread
From: David Sterba @ 2018-06-19 13:35 UTC (permalink / raw)
To: Nikolay Borisov; +Cc: linux-btrfs, jeffm
On Mon, Jun 18, 2018 at 02:59:23PM +0300, Nikolay Borisov wrote:
> This series improves the functions involved around extent reference increment.
> The first patch just removes a redundant argument, the second one documents the
> parameters of __btrfs_inc_extent_ref. It can be considered v2 of the standalone
> version which Jeff had some input to. The final patch fixes a comment in
> lookup_inline_extent_backref which transpired while Jeff was revieweing the
> documentation patch.
>
> Nikolay Borisov (3):
> btrfs: Remove fs_info argument from __btrfs_inc_extent_ref
> btrfs: Document __btrfs_inc_extent_ref
> btrfs: Fix comment in lookup_inline_extent_backref
2 and 3 added to misc-next, thanks.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref
2018-06-18 11:59 ` [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref Nikolay Borisov
2018-06-19 5:24 ` Qu Wenruo
2018-06-19 13:01 ` Nikolay Borisov
@ 2018-06-19 19:31 ` Jeff Mahoney
2018-06-19 22:36 ` Nikolay Borisov
2 siblings, 1 reply; 10+ messages in thread
From: Jeff Mahoney @ 2018-06-19 19:31 UTC (permalink / raw)
To: Nikolay Borisov, linux-btrfs
[-- Attachment #1.1: Type: text/plain, Size: 2855 bytes --]
On 6/18/18 7:59 AM, Nikolay Borisov wrote:
> This function already takes a transaction which holds a reference to
> the fs_info struct. Use that reference and remove the extra arg. No
> functional changes.
I like the idea here. I wasn't sold at first, but I think if we can
standardize on taking only a trans handle when one is required and both
a trans and fs_info when it's optional, it'll make the code clearer.
This cleanup can percolate up the stack to cover pretty much all of
delayed refs.
Reviewed-by: Jeff Mahoney <jeffm@suse.com>
> Signed-off-by: Nikolay Borisov <nborisov@suse.com>
> ---
> fs/btrfs/extent-tree.c | 15 ++++++---------
> 1 file changed, 6 insertions(+), 9 deletions(-)
>
> diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
> index 4850e538ab10..59645ced6fbc 100644
> --- a/fs/btrfs/extent-tree.c
> +++ b/fs/btrfs/extent-tree.c
> @@ -2208,12 +2208,12 @@ int btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
> }
>
> static int __btrfs_inc_extent_ref(struct btrfs_trans_handle *trans,
> - struct btrfs_fs_info *fs_info,
> struct btrfs_delayed_ref_node *node,
> u64 parent, u64 root_objectid,
> u64 owner, u64 offset, int refs_to_add,
> struct btrfs_delayed_extent_op *extent_op)
> {
> + struct btrfs_fs_info *fs_info = trans->fs_info;
> struct btrfs_path *path;
> struct extent_buffer *leaf;
> struct btrfs_extent_item *item;
> @@ -2297,10 +2297,9 @@ static int run_delayed_data_ref(struct btrfs_trans_handle *trans,
> ref->objectid, ref->offset,
> &ins, node->ref_mod);
> } else if (node->action == BTRFS_ADD_DELAYED_REF) {
> - ret = __btrfs_inc_extent_ref(trans, fs_info, node, parent,
> - ref_root, ref->objectid,
> - ref->offset, node->ref_mod,
> - extent_op);
> + ret = __btrfs_inc_extent_ref(trans, node, parent, ref_root,
> + ref->objectid, ref->offset,
> + node->ref_mod, extent_op);
> } else if (node->action == BTRFS_DROP_DELAYED_REF) {
> ret = __btrfs_free_extent(trans, fs_info, node, parent,
> ref_root, ref->objectid,
> @@ -2450,10 +2449,8 @@ static int run_delayed_tree_ref(struct btrfs_trans_handle *trans,
> BUG_ON(!extent_op || !extent_op->update_flags);
> ret = alloc_reserved_tree_block(trans, node, extent_op);
> } else if (node->action == BTRFS_ADD_DELAYED_REF) {
> - ret = __btrfs_inc_extent_ref(trans, fs_info, node,
> - parent, ref_root,
> - ref->level, 0, 1,
> - extent_op);
> + ret = __btrfs_inc_extent_ref(trans, node, parent, ref_root,
> + ref->level, 0, 1, extent_op);
> } else if (node->action == BTRFS_DROP_DELAYED_REF) {
> ret = __btrfs_free_extent(trans, fs_info, node,
> parent, ref_root,
>
--
Jeff Mahoney
SUSE Labs
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref
2018-06-19 19:31 ` Jeff Mahoney
@ 2018-06-19 22:36 ` Nikolay Borisov
0 siblings, 0 replies; 10+ messages in thread
From: Nikolay Borisov @ 2018-06-19 22:36 UTC (permalink / raw)
To: Jeff Mahoney, linux-btrfs
On 19.06.2018 22:31, Jeff Mahoney wrote:
> I like the idea here. I wasn't sold at first, but I think if we can
> standardize on taking only a trans handle when one is required and both
> a trans and fs_info when it's optional, it'll make the code clearer.
> This cleanup can percolate up the stack to cover pretty much all of
> delayed refs.
I have a 25-something patches which do exactly this. Still WIP, will
likely send it tomorrow.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-06-19 22:36 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-18 11:59 [PATCH 0/3] Cleanups around extent increment Nikolay Borisov
2018-06-18 11:59 ` [PATCH 1/3] btrfs: Remove fs_info argument from __btrfs_inc_extent_ref Nikolay Borisov
2018-06-19 5:24 ` Qu Wenruo
2018-06-19 13:01 ` Nikolay Borisov
2018-06-19 19:31 ` Jeff Mahoney
2018-06-19 22:36 ` Nikolay Borisov
2018-06-18 11:59 ` [PATCH 2/3] btrfs: Document __btrfs_inc_extent_ref Nikolay Borisov
2018-06-19 5:28 ` Qu Wenruo
2018-06-18 11:59 ` [PATCH 3/3] btrfs: Fix comment in lookup_inline_extent_backref Nikolay Borisov
2018-06-19 13:35 ` [PATCH 0/3] Cleanups around extent increment David Sterba
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox