lkml.org 
[lkml]   [2021]   [Oct]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] btrfs: Simplify conditional in assert
From
Date


On 15.10.21 г. 13:51, David Sterba wrote:
> Adding Johannes to CC,
>
> On Fri, Oct 15, 2021 at 06:36:39AM -0400, Wan Jiabing wrote:
>> Fix following coccicheck warning:
>> ./fs/btrfs/inode.c:2015:16-18: WARNING !A || A && B is equivalent to !A || B
>>
>> Signed-off-by: Wan Jiabing <wanjiabing@vivo.com>
>> ---
>> fs/btrfs/inode.c | 3 +--
>> 1 file changed, 1 insertion(+), 2 deletions(-)
>>
>> diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
>> index e9154b436c47..da4aeef73b0d 100644
>> --- a/fs/btrfs/inode.c
>> +++ b/fs/btrfs/inode.c
>> @@ -2011,8 +2011,7 @@ int btrfs_run_delalloc_range(struct btrfs_inode *inode, struct page *locked_page
>> * to use run_delalloc_nocow() here, like for regular
>> * preallocated inodes.
>> */
>> - ASSERT(!zoned ||
>> - (zoned && btrfs_is_data_reloc_root(inode->root)));
>> + ASSERT(!zoned || btrfs_is_data_reloc_root(inode->root));
>
> The short form is equivalent, but I'm not sure it's also on the same
> level of readability. Repeating the 'zoned' condition check makes it
> obvious on first sight, which is what I'd prefer.
>
> Johannes if you'd like the new version I'll change it but otherwise I'm
> fine with what we have now.

Just my 2 cents:

The less code we have the better, i.e !zoned is obvious when it's true
i.e when zoned is false. So the way I read teh assert with the short
form is "we are not zoned OR we are (this is implicit) and this is the
data reloc root". Obviously this is personal preference as you deem it's
better better to have the !zoned || zoned.


>
>> ret = run_delalloc_nocow(inode, locked_page, start, end,
>> page_started, nr_written);
>> } else if (!inode_can_compress(inode) ||
>> --
>> 2.20.1
>

\
 
 \ /
  Last update: 2021-10-15 16:20    [W:0.029 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site