mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
fs: iomap: use bio_add_folio_nofail where possible
When the iomap buffered-io code can't add a folio to a bio, it allocates a new bio and adds the folio to that one. This is done using bio_add_folio(), but doesn't check for errors. As adding a folio to a newly created bio can't fail, use the newly introduced bio_add_folio_nofail() function. Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Link: https://lore.kernel.org/r/58fa893c24c67340a63323f09a179fefdca07f2a.1685532726.git.johannes.thumshirn@wdc.com Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
7a150f1ed1
commit
c2478469f2
@ -312,7 +312,7 @@ static loff_t iomap_readpage_iter(const struct iomap_iter *iter,
|
||||
ctx->bio->bi_opf |= REQ_RAHEAD;
|
||||
ctx->bio->bi_iter.bi_sector = sector;
|
||||
ctx->bio->bi_end_io = iomap_read_end_io;
|
||||
bio_add_folio(ctx->bio, folio, plen, poff);
|
||||
bio_add_folio_nofail(ctx->bio, folio, plen, poff);
|
||||
}
|
||||
|
||||
done:
|
||||
@ -539,7 +539,7 @@ static int iomap_read_folio_sync(loff_t block_start, struct folio *folio,
|
||||
|
||||
bio_init(&bio, iomap->bdev, &bvec, 1, REQ_OP_READ);
|
||||
bio.bi_iter.bi_sector = iomap_sector(iomap, block_start);
|
||||
bio_add_folio(&bio, folio, plen, poff);
|
||||
bio_add_folio_nofail(&bio, folio, plen, poff);
|
||||
return submit_bio_wait(&bio);
|
||||
}
|
||||
|
||||
@ -1582,7 +1582,7 @@ iomap_add_to_ioend(struct inode *inode, loff_t pos, struct folio *folio,
|
||||
|
||||
if (!bio_add_folio(wpc->ioend->io_bio, folio, len, poff)) {
|
||||
wpc->ioend->io_bio = iomap_chain_bio(wpc->ioend->io_bio);
|
||||
bio_add_folio(wpc->ioend->io_bio, folio, len, poff);
|
||||
bio_add_folio_nofail(wpc->ioend->io_bio, folio, len, poff);
|
||||
}
|
||||
|
||||
if (iop)
|
||||
|
Loading…
Reference in New Issue
Block a user