mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
iomap: cleanup the pending writeback tracking in iomap_writepage_map_blocks
We don't care about the count of outstanding ioends, just if there is one. Replace the count variable passed to iomap_writepage_map_blocks with a boolean to make that more clear. Signed-off-by: Joanne Koong <joannelkoong@gmail.com> [hch: rename the variable, update the commit message] Signed-off-by: Christoph Hellwig <hch@lst.de> Link: https://lore.kernel.org/20250710133343.399917-4-hch@lst.de Reviewed-by: Brian Foster <bfoster@redhat.com> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
67fd9615a7
commit
40368a6acb
|
|
@ -1750,7 +1750,7 @@ static int iomap_add_to_ioend(struct iomap_writepage_ctx *wpc,
|
|||
|
||||
static int iomap_writepage_map_blocks(struct iomap_writepage_ctx *wpc,
|
||||
struct folio *folio, u64 pos, u64 end_pos, unsigned dirty_len,
|
||||
unsigned *count)
|
||||
bool *wb_pending)
|
||||
{
|
||||
int error;
|
||||
|
||||
|
|
@ -1778,7 +1778,7 @@ static int iomap_writepage_map_blocks(struct iomap_writepage_ctx *wpc,
|
|||
error = iomap_add_to_ioend(wpc, folio, pos, end_pos,
|
||||
map_len);
|
||||
if (!error)
|
||||
(*count)++;
|
||||
*wb_pending = true;
|
||||
break;
|
||||
}
|
||||
dirty_len -= map_len;
|
||||
|
|
@ -1865,7 +1865,7 @@ static int iomap_writepage_map(struct iomap_writepage_ctx *wpc,
|
|||
u64 pos = folio_pos(folio);
|
||||
u64 end_pos = pos + folio_size(folio);
|
||||
u64 end_aligned = 0;
|
||||
unsigned count = 0;
|
||||
bool wb_pending = false;
|
||||
int error = 0;
|
||||
u32 rlen;
|
||||
|
||||
|
|
@ -1909,13 +1909,13 @@ static int iomap_writepage_map(struct iomap_writepage_ctx *wpc,
|
|||
end_aligned = round_up(end_pos, i_blocksize(inode));
|
||||
while ((rlen = iomap_find_dirty_range(folio, &pos, end_aligned))) {
|
||||
error = iomap_writepage_map_blocks(wpc, folio, pos, end_pos,
|
||||
rlen, &count);
|
||||
rlen, &wb_pending);
|
||||
if (error)
|
||||
break;
|
||||
pos += rlen;
|
||||
}
|
||||
|
||||
if (count)
|
||||
if (wb_pending)
|
||||
wpc->nr_folios++;
|
||||
|
||||
/*
|
||||
|
|
@ -1937,7 +1937,7 @@ static int iomap_writepage_map(struct iomap_writepage_ctx *wpc,
|
|||
if (atomic_dec_and_test(&ifs->write_bytes_pending))
|
||||
folio_end_writeback(folio);
|
||||
} else {
|
||||
if (!count)
|
||||
if (!wb_pending)
|
||||
folio_end_writeback(folio);
|
||||
}
|
||||
mapping_set_error(inode->i_mapping, error);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user