diff mbox series

btrfs: remove the useless value assignment in block_rsv_release_bytes

Message ID 1605422363-14947-1-git-send-email-kaixuxia@tencent.com (mailing list archive)
State New, archived
Headers show
Series btrfs: remove the useless value assignment in block_rsv_release_bytes | expand

Commit Message

Kaixu Xia Nov. 15, 2020, 6:39 a.m. UTC
From: Kaixu Xia <kaixuxia@tencent.com>

The variable qgroup_to_release is overwritten by the following if/else
statement before it is used, so this assignment is useless. Remove it.

Reported-by: Tosk Robot <tencent_os_robot@tencent.com>
Signed-off-by: Kaixu Xia <kaixuxia@tencent.com>
---
 fs/btrfs/block-rsv.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

David Sterba Nov. 16, 2020, 3:15 p.m. UTC | #1
On Sun, Nov 15, 2020 at 02:39:23PM +0800, xiakaixu1987@gmail.com wrote:
> From: Kaixu Xia <kaixuxia@tencent.com>
> 
> The variable qgroup_to_release is overwritten by the following if/else
> statement before it is used, so this assignment is useless. Remove it.

Again this lacks explanation why removing it is correct.
Kaixu Xia Nov. 17, 2020, 3:17 a.m. UTC | #2
On 2020/11/16 23:15, David Sterba wrote:
> On Sun, Nov 15, 2020 at 02:39:23PM +0800, xiakaixu1987@gmail.com wrote:
>> From: Kaixu Xia <kaixuxia@tencent.com>
>>
>> The variable qgroup_to_release is overwritten by the following if/else
>> statement before it is used, so this assignment is useless. Remove it.
> 
> Again this lacks explanation why removing it is correct.
> 
Actually this assignment is redundant because the variable qgroup_to_release
has been overwritten before it is used. The logic like this,

 static u64 block_rsv_release_bytes(...)
 {
 ...
        if (num_bytes == (u64)-1) {
                num_bytes = block_rsv->size;
                qgroup_to_release = block_rsv->qgroup_rsv_size;
        }   
        
	//qgroup_to_release isn't used

        if (block_rsv->qgroup_rsv_reserved >= block_rsv->qgroup_rsv_size) {
                qgroup_to_release = block_rsv->qgroup_rsv_reserved -
                                    block_rsv->qgroup_rsv_size;
                block_rsv->qgroup_rsv_reserved = block_rsv->qgroup_rsv_size;
        } else {
                qgroup_to_release = 0;
        }//qgroup_to_release is overwritten    
 ...
 }

Thanks,
Kaixu
David Sterba Nov. 23, 2020, 5:58 p.m. UTC | #3
On Tue, Nov 17, 2020 at 11:17:17AM +0800, kaixuxia wrote:
> 
> 
> On 2020/11/16 23:15, David Sterba wrote:
> > On Sun, Nov 15, 2020 at 02:39:23PM +0800, xiakaixu1987@gmail.com wrote:
> >> From: Kaixu Xia <kaixuxia@tencent.com>
> >>
> >> The variable qgroup_to_release is overwritten by the following if/else
> >> statement before it is used, so this assignment is useless. Remove it.
> > 
> > Again this lacks explanation why removing it is correct.
> > 
> Actually this assignment is redundant because the variable qgroup_to_release
> has been overwritten before it is used. The logic like this,

That's obvious and I did not mean that. Have you checked in which commit
the variable became unused and why? It's possible that it was indeed
just an oversight, but if not it could point to a bug.
diff mbox series

Patch

diff --git a/fs/btrfs/block-rsv.c b/fs/btrfs/block-rsv.c
index bc920afe23bf..8638327069b7 100644
--- a/fs/btrfs/block-rsv.c
+++ b/fs/btrfs/block-rsv.c
@@ -109,10 +109,8 @@  static u64 block_rsv_release_bytes(struct btrfs_fs_info *fs_info,
 	u64 ret;
 
 	spin_lock(&block_rsv->lock);
-	if (num_bytes == (u64)-1) {
+	if (num_bytes == (u64)-1)
 		num_bytes = block_rsv->size;
-		qgroup_to_release = block_rsv->qgroup_rsv_size;
-	}
 	block_rsv->size -= num_bytes;
 	if (block_rsv->reserved >= block_rsv->size) {
 		num_bytes = block_rsv->reserved - block_rsv->size;