On 07/13/2018 07:28 PM, Nikolay Borisov wrote:
On 13.07.2018 14:27, Anand Jain wrote:
On 07/12/2018 03:43 PM, Nikolay Borisov wrote:
On 10.07.2018 21:22, Anand Jain wrote:
Move the section of the code which performs the check if the device is
indelible, move that into a helper function.
Signed-off-by: Anand Jain <anand.j...@oracle.com>
---
fs/btrfs/volumes.c | 49
++++++++++++++++++++++++++++++-------------------
1 file changed, 30 insertions(+), 19 deletions(-)
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 59a6d8f42c98..feb29c5b44f6 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -1945,6 +1945,33 @@ static inline u64 btrfs_num_devices(struct
btrfs_fs_info *fs_info)
return num_devices;
}
+static struct btrfs_device *btrfs_device_delete_able(
Ugliest name ever! So this function is not really a predicate, rather
it's used to fetch the struct btrfs_device * to delete. So a more
becoming name would be:
btrfs_get_device_for_delete - though this a bit verbose.
I guess btrfs_can_delete_device is more suitable if you want to follow
this predicate style. At the very least, though, the correct form of the
adjective is deletable so it should be btrfs_device_deletable. But as I
said this function is not really used as a predicate.
Its a predicate, return of the device pointer is just a by-product.
Will use btrfs_device_deletable().
Then it's fundamentally wrong, a predicate should really return true or
false. This function actually tries to acquire a device which will only
happen if it meets certain criterion, so I'm inclined to say it's not
really a predicate but rather tries to acquire a reference to a device
which meets certain criteria.
Ok. Will rename it, so that it won't look like predicate. However as
btrfs_device.. should come fist based on the other functions, will
use, btrfs_device_get_for_delete()
Thanks, Anand
<snip>
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html