Skip to content

Commit 4f221ef

Browse files
Christoph Hellwigaxboe
authored andcommitted
block: handle huge zero folios in bio_free_folios
When CONFIG_PERSISTENT_HUGE_ZERO_FOLIO is enabled, iomap_dio_zero() can add a huge zero folio to a zeroing bio, which needs special treatment in bio_free_folios by also checking is_huge_zero_folio() in addition to is_zero_folio(). Fixes: 8dd5e7c ("block: add helpers to bounce buffer an iov_iter into bios") Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Hannes Reinecke <hare@kernel.org> Link: https://patch.msgid.link/20260716091306.316625-2-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent 447cfed commit 4f221ef

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

block/bio.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1311,7 +1311,7 @@ static void bio_free_folios(struct bio *bio)
13111311
bio_for_each_bvec_all(bv, bio, i) {
13121312
struct folio *folio = bvec_folio(bv);
13131313

1314-
if (!is_zero_folio(folio))
1314+
if (!is_zero_folio(folio) && !is_huge_zero_folio(folio))
13151315
folio_put(folio);
13161316
}
13171317
}

0 commit comments

Comments
 (0)