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

Reply via email to