Message ID | 20230125133436.447864-2-hch@lst.de (mailing list archive) |
---|---|
State | Accepted |
Commit | 7d28631786b2333c5d48ad25172eb159aaa2945f |
Headers | show |
Series | [1/7] mpage: stop using bdev_{read,write}_page | expand |
Christoph Hellwig wrote: > These are micro-optimizations for synchronous I/O, which do not matter > compared to all the other inefficiencies in the legacy buffer_head > based mpage code. > > Signed-off-by: Christoph Hellwig <hch@lst.de> > --- > fs/mpage.c | 10 ---------- > 1 file changed, 10 deletions(-) > > diff --git a/fs/mpage.c b/fs/mpage.c > index 0f8ae954a57903..124550cfac4a70 100644 > --- a/fs/mpage.c > +++ b/fs/mpage.c > @@ -269,11 +269,6 @@ static struct bio *do_mpage_readpage(struct mpage_readpage_args *args) > > alloc_new: > if (args->bio == NULL) { > - if (first_hole == blocks_per_page) { > - if (!bdev_read_page(bdev, blocks[0] << (blkbits - 9), > - &folio->page)) > - goto out; > - } > args->bio = bio_alloc(bdev, bio_max_segs(args->nr_pages), opf, > gfp); > if (args->bio == NULL) > @@ -579,11 +574,6 @@ static int __mpage_writepage(struct page *page, struct writeback_control *wbc, > > alloc_new: > if (bio == NULL) { > - if (first_unmapped == blocks_per_page) { > - if (!bdev_write_page(bdev, blocks[0] << (blkbits - 9), > - page, wbc)) > - goto out; > - } > bio = bio_alloc(bdev, BIO_MAX_VECS, > REQ_OP_WRITE | wbc_to_write_flags(wbc), > GFP_NOFS); > -- > 2.39.0 > Makes sense, Reviewed-by: Dan Williams <dan.j.williams@intel.com>
diff --git a/fs/mpage.c b/fs/mpage.c index 0f8ae954a57903..124550cfac4a70 100644 --- a/fs/mpage.c +++ b/fs/mpage.c @@ -269,11 +269,6 @@ static struct bio *do_mpage_readpage(struct mpage_readpage_args *args) alloc_new: if (args->bio == NULL) { - if (first_hole == blocks_per_page) { - if (!bdev_read_page(bdev, blocks[0] << (blkbits - 9), - &folio->page)) - goto out; - } args->bio = bio_alloc(bdev, bio_max_segs(args->nr_pages), opf, gfp); if (args->bio == NULL) @@ -579,11 +574,6 @@ static int __mpage_writepage(struct page *page, struct writeback_control *wbc, alloc_new: if (bio == NULL) { - if (first_unmapped == blocks_per_page) { - if (!bdev_write_page(bdev, blocks[0] << (blkbits - 9), - page, wbc)) - goto out; - } bio = bio_alloc(bdev, BIO_MAX_VECS, REQ_OP_WRITE | wbc_to_write_flags(wbc), GFP_NOFS);
These are micro-optimizations for synchronous I/O, which do not matter compared to all the other inefficiencies in the legacy buffer_head based mpage code. Signed-off-by: Christoph Hellwig <hch@lst.de> --- fs/mpage.c | 10 ---------- 1 file changed, 10 deletions(-)