OSDN Git Service

jbd2: Completely fill journal descriptor blocks
authorJan Kara <jack@suse.cz>
Tue, 5 Nov 2019 16:44:09 +0000 (17:44 +0100)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 5 Nov 2019 17:13:25 +0000 (12:13 -0500)
commitb90bfdf581194a0fa5f6c26fef1e522f15f6212e
tree049cad17c0b0b24520d734501ad6a1c4a2b05935
parent0db45889453644bb5d3e3c6044f4d81b910d41ef
jbd2: Completely fill journal descriptor blocks

With 32-bit block numbers, we don't allocate the array for journal
buffer heads large enough for corresponding descriptor tags to fill the
descriptor block. Thus we end up writing out half-full descriptor blocks
to the journal unnecessarily growing the transaction. Fix the logic to
allocate the array large enough.

Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20191105164437.32602-3-jack@suse.cz
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/jbd2/journal.c