ext4: release discard bio after sending discard commands
authorDaeho Jeong <daeho.jeong@samsung.com>
Sat, 5 Aug 2017 17:11:57 +0000 (13:11 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 5 Aug 2017 17:11:57 +0000 (13:11 -0400)
We've changed the discard command handling into parallel manner.
But, in this change, I forgot decreasing the usage count of the bio
which was used to send discard request. I'm sorry about that.

Fixes: a015434480dc ("ext4: send parallel discards on commit completions")
Signed-off-by: Daeho Jeong <daeho.jeong@samsung.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Jan Kara <jack@suse.cz>
fs/ext4/mballoc.c

index 581e357e8406c7cdea04999bdd89a12762c55e89..8779893d74e5ca01a3c88ff6ac1b7676b3aec420 100644 (file)
@@ -2892,8 +2892,10 @@ void ext4_process_freed_data(struct super_block *sb, tid_t commit_tid)
                                break;
                }
 
-               if (discard_bio)
+               if (discard_bio) {
                        submit_bio_wait(discard_bio);
+                       bio_put(discard_bio);
+               }
        }
 
        list_for_each_entry_safe(entry, tmp, &freed_data_list, efd_list)