* [PATCH] btrfs: Improve btrfs_search_slot description
@ 2017-12-08 15:06 Nikolay Borisov
2017-12-12 19:14 ` David Sterba
0 siblings, 1 reply; 4+ messages in thread
From: Nikolay Borisov @ 2017-12-08 15:06 UTC (permalink / raw)
To: linux-btrfs; +Cc: Nikolay Borisov
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
---
fs/btrfs/ctree.c | 32 ++++++++++++++++++++++----------
1 file changed, 22 insertions(+), 10 deletions(-)
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
index 880f4f693263..1f001d31bda8 100644
--- a/fs/btrfs/ctree.c
+++ b/fs/btrfs/ctree.c
@@ -2653,18 +2653,30 @@ int btrfs_find_item(struct btrfs_root *fs_root, struct btrfs_path *path,
return 0;
}
-/*
- * look for key in the tree. path is filled in with nodes along the way
- * if key is found, we return zero and you can find the item in the leaf
- * level of the path (level 0)
+/* btrfs_search_slot - look for a key in a tree and perform necessary
+ * modifications to preserve tree invariants.
+ *
+ * @trans: Handle of transaction, used when modifying the tree
+ * @p: Holds all btree nodes along the search path
+ * @root: The root node of the tree
+ * @key: The key we are looking for
+ * @ins_len: Indicates purpose of search, for inserts it is 1, for
+ * deletions it's -1. 0 for plain searches
+ * @cow: boolean should CoW operations be performed. Must always be 1
+ * when modifying the tree.
+ *
+ * If @ins_len > 0, nodes and leaves will be split as we walk down the tree.
+ * If @ins_len < 0, nodes will be merged as we walk down the tree (if possible)
+ *
+ * If @key is found, 0 is returned and you can find the item in the leaf level
+ * of the path (level 0)
*
- * If the key isn't found, the path points to the slot where it should
- * be inserted, and 1 is returned. If there are other errors during the
- * search a negative error number is returned.
+ * If @key isn't found, 1 is returned and the leaf level of the path (level 0)
+ * points to the slot where it should be inserted
+ * be inserted, and 1 is returned.
*
- * if ins_len > 0, nodes and leaves will be split as we walk down the
- * tree. if ins_len < 0, nodes will be merged as we walk down the tree (if
- * possible)
+ * If an error is encountered while searching the tree a negative error number
+ * is returned
*/
int btrfs_search_slot(struct btrfs_trans_handle *trans, struct btrfs_root *root,
const struct btrfs_key *key, struct btrfs_path *p,
--
2.7.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] btrfs: Improve btrfs_search_slot description
2017-12-08 15:06 [PATCH] btrfs: Improve btrfs_search_slot description Nikolay Borisov
@ 2017-12-12 19:14 ` David Sterba
2017-12-13 7:38 ` [PATCH v2] " Nikolay Borisov
0 siblings, 1 reply; 4+ messages in thread
From: David Sterba @ 2017-12-12 19:14 UTC (permalink / raw)
To: Nikolay Borisov; +Cc: linux-btrfs
On Fri, Dec 08, 2017 at 05:06:25PM +0200, Nikolay Borisov wrote:
> Signed-off-by: Nikolay Borisov <nborisov@suse.com>
> ---
> fs/btrfs/ctree.c | 32 ++++++++++++++++++++++----------
> 1 file changed, 22 insertions(+), 10 deletions(-)
>
> diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
> index 880f4f693263..1f001d31bda8 100644
> --- a/fs/btrfs/ctree.c
> +++ b/fs/btrfs/ctree.c
> @@ -2653,18 +2653,30 @@ int btrfs_find_item(struct btrfs_root *fs_root, struct btrfs_path *path,
> return 0;
> }
>
> -/*
> - * look for key in the tree. path is filled in with nodes along the way
> - * if key is found, we return zero and you can find the item in the leaf
> - * level of the path (level 0)
> +/* btrfs_search_slot - look for a key in a tree and perform necessary
/*
* ...
> + * modifications to preserve tree invariants.
> + *
> + * @trans: Handle of transaction, used when modifying the tree
> + * @p: Holds all btree nodes along the search path
> + * @root: The root node of the tree
> + * @key: The key we are looking for
> + * @ins_len: Indicates purpose of search, for inserts it is 1, for
> + * deletions it's -1. 0 for plain searches
> + * @cow: boolean should CoW operations be performed. Must always be 1
> + * when modifying the tree.
> + *
> + * If @ins_len > 0, nodes and leaves will be split as we walk down the tree.
> + * If @ins_len < 0, nodes will be merged as we walk down the tree (if possible)
> + *
> + * If @key is found, 0 is returned and you can find the item in the leaf level
> + * of the path (level 0)
> *
> - * If the key isn't found, the path points to the slot where it should
> - * be inserted, and 1 is returned. If there are other errors during the
> - * search a negative error number is returned.
> + * If @key isn't found, 1 is returned and the leaf level of the path (level 0)
> + * points to the slot where it should be inserted
> + * be inserted, and 1 is returned.
looks like some editing artifact
> *
> - * if ins_len > 0, nodes and leaves will be split as we walk down the
> - * tree. if ins_len < 0, nodes will be merged as we walk down the tree (if
> - * possible)
> + * If an error is encountered while searching the tree a negative error number
> + * is returned
> */
> int btrfs_search_slot(struct btrfs_trans_handle *trans, struct btrfs_root *root,
> const struct btrfs_key *key, struct btrfs_path *p,
> --
> 2.7.4
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2] btrfs: Improve btrfs_search_slot description
2017-12-12 19:14 ` David Sterba
@ 2017-12-13 7:38 ` Nikolay Borisov
2017-12-14 15:12 ` David Sterba
0 siblings, 1 reply; 4+ messages in thread
From: Nikolay Borisov @ 2017-12-13 7:38 UTC (permalink / raw)
To: dsterba; +Cc: linux-btrfs, Nikolay Borisov
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
---
fs/btrfs/ctree.c | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c
index 880f4f693263..7e6511dfe73a 100644
--- a/fs/btrfs/ctree.c
+++ b/fs/btrfs/ctree.c
@@ -2654,17 +2654,29 @@ int btrfs_find_item(struct btrfs_root *fs_root, struct btrfs_path *path,
}
/*
- * look for key in the tree. path is filled in with nodes along the way
- * if key is found, we return zero and you can find the item in the leaf
- * level of the path (level 0)
+ * btrfs_search_slot - look for a key in a tree and perform necessary
+ * modifications to preserve tree invariants.
*
- * If the key isn't found, the path points to the slot where it should
- * be inserted, and 1 is returned. If there are other errors during the
- * search a negative error number is returned.
+ * @trans: Handle of transaction, used when modifying the tree
+ * @p: Holds all btree nodes along the search path
+ * @root: The root node of the tree
+ * @key: The key we are looking for
+ * @ins_len: Indicates purpose of search, for inserts it is 1, for
+ * deletions it's -1. 0 for plain searches
+ * @cow: boolean should CoW operations be performed. Must always be 1
+ * when modifying the tree.
*
- * if ins_len > 0, nodes and leaves will be split as we walk down the
- * tree. if ins_len < 0, nodes will be merged as we walk down the tree (if
- * possible)
+ * If @ins_len > 0, nodes and leaves will be split as we walk down the tree.
+ * If @ins_len < 0, nodes will be merged as we walk down the tree (if possible)
+ *
+ * If @key is found, 0 is returned and you can find the item in the leaf level
+ * of the path (level 0)
+ *
+ * If @key isn't found, 1 is returned and the leaf level of the path (level 0)
+ * points to the slot where it should be inserted
+ *
+ * If an error is encountered while searching the tree a negative error number
+ * is returned
*/
int btrfs_search_slot(struct btrfs_trans_handle *trans, struct btrfs_root *root,
const struct btrfs_key *key, struct btrfs_path *p,
--
2.7.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2] btrfs: Improve btrfs_search_slot description
2017-12-13 7:38 ` [PATCH v2] " Nikolay Borisov
@ 2017-12-14 15:12 ` David Sterba
0 siblings, 0 replies; 4+ messages in thread
From: David Sterba @ 2017-12-14 15:12 UTC (permalink / raw)
To: Nikolay Borisov; +Cc: dsterba, linux-btrfs
On Wed, Dec 13, 2017 at 09:38:14AM +0200, Nikolay Borisov wrote:
> Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Added, thanks.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-12-14 15:14 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-08 15:06 [PATCH] btrfs: Improve btrfs_search_slot description Nikolay Borisov
2017-12-12 19:14 ` David Sterba
2017-12-13 7:38 ` [PATCH v2] " Nikolay Borisov
2017-12-14 15:12 ` David Sterba
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.