Message ID | 1408637375-11343-16-git-send-email-hch@lst.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Aug 21, 2014 at 9:09 AM, Christoph Hellwig <hch@lst.de> wrote: > The core nfs code handles setting pages uptodate on reads, no need to mess > with the pageflags outselves. Also remove a debug function to dump page > flags. > > Signed-off-by: Christoph Hellwig <hch@lst.de> > --- > fs/nfs/blocklayout/blocklayout.c | 24 +----------------------- > 1 file changed, 1 insertion(+), 23 deletions(-) > > diff --git a/fs/nfs/blocklayout/blocklayout.c b/fs/nfs/blocklayout/blocklayout.c > index 6484b9f..92be984 100644 > --- a/fs/nfs/blocklayout/blocklayout.c > +++ b/fs/nfs/blocklayout/blocklayout.c > @@ -49,20 +49,6 @@ MODULE_LICENSE("GPL"); > MODULE_AUTHOR("Andy Adamson <andros@citi.umich.edu>"); > MODULE_DESCRIPTION("The NFSv4.1 pNFS Block layout driver"); > > -static void print_page(struct page *page) > -{ > - dprintk("PRINTPAGE page %p\n", page); > - dprintk(" PagePrivate %d\n", PagePrivate(page)); > - dprintk(" PageUptodate %d\n", PageUptodate(page)); > - dprintk(" PageError %d\n", PageError(page)); > - dprintk(" PageDirty %d\n", PageDirty(page)); > - dprintk(" PageReferenced %d\n", PageReferenced(page)); > - dprintk(" PageLocked %d\n", PageLocked(page)); > - dprintk(" PageWriteback %d\n", PageWriteback(page)); > - dprintk(" PageMappedToDisk %d\n", PageMappedToDisk(page)); > - dprintk("\n"); > -} > - > /* Given the be associated with isect, determine if page data needs to be > * initialized. > */ > @@ -187,16 +173,9 @@ retry: > return bio; > } > > -/* This is basically copied from mpage_end_io_read */ > static void bl_end_io_read(struct bio *bio, int err) > { > struct parallel_io *par = bio->bi_private; > - struct bio_vec *bvec; > - int i; > - > - if (!err) > - bio_for_each_segment_all(bvec, bio, i) > - SetPageUptodate(bvec->bv_page); > > if (err) { > struct nfs_pgio_header *header = par->data; > @@ -205,6 +184,7 @@ static void bl_end_io_read(struct bio *bio, int err) > header->pnfs_error = -EIO; > pnfs_set_lo_fail(header->lseg); > } > + > bio_put(bio); > put_parallel(par); > } > @@ -304,8 +284,6 @@ bl_read_pagelist(struct nfs_pgio_header *hdr) > /* Fill hole w/ zeroes w/o accessing device */ > dprintk("%s Zeroing page for hole\n", __func__); > zero_user_segment(pages[i], pg_offset, pg_len); > - print_page(pages[i]); > - SetPageUptodate(pages[i]); > } else { > struct pnfs_block_extent *be_read; > > -- > 1.9.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-nfs" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html Depends on "[PATCH 14/19] pnfs/blocklayout: remove read-modify-write handling in bl_write_pagelist". Holding for now.
diff --git a/fs/nfs/blocklayout/blocklayout.c b/fs/nfs/blocklayout/blocklayout.c index 6484b9f..92be984 100644 --- a/fs/nfs/blocklayout/blocklayout.c +++ b/fs/nfs/blocklayout/blocklayout.c @@ -49,20 +49,6 @@ MODULE_LICENSE("GPL"); MODULE_AUTHOR("Andy Adamson <andros@citi.umich.edu>"); MODULE_DESCRIPTION("The NFSv4.1 pNFS Block layout driver"); -static void print_page(struct page *page) -{ - dprintk("PRINTPAGE page %p\n", page); - dprintk(" PagePrivate %d\n", PagePrivate(page)); - dprintk(" PageUptodate %d\n", PageUptodate(page)); - dprintk(" PageError %d\n", PageError(page)); - dprintk(" PageDirty %d\n", PageDirty(page)); - dprintk(" PageReferenced %d\n", PageReferenced(page)); - dprintk(" PageLocked %d\n", PageLocked(page)); - dprintk(" PageWriteback %d\n", PageWriteback(page)); - dprintk(" PageMappedToDisk %d\n", PageMappedToDisk(page)); - dprintk("\n"); -} - /* Given the be associated with isect, determine if page data needs to be * initialized. */ @@ -187,16 +173,9 @@ retry: return bio; } -/* This is basically copied from mpage_end_io_read */ static void bl_end_io_read(struct bio *bio, int err) { struct parallel_io *par = bio->bi_private; - struct bio_vec *bvec; - int i; - - if (!err) - bio_for_each_segment_all(bvec, bio, i) - SetPageUptodate(bvec->bv_page); if (err) { struct nfs_pgio_header *header = par->data; @@ -205,6 +184,7 @@ static void bl_end_io_read(struct bio *bio, int err) header->pnfs_error = -EIO; pnfs_set_lo_fail(header->lseg); } + bio_put(bio); put_parallel(par); } @@ -304,8 +284,6 @@ bl_read_pagelist(struct nfs_pgio_header *hdr) /* Fill hole w/ zeroes w/o accessing device */ dprintk("%s Zeroing page for hole\n", __func__); zero_user_segment(pages[i], pg_offset, pg_len); - print_page(pages[i]); - SetPageUptodate(pages[i]); } else { struct pnfs_block_extent *be_read;
The core nfs code handles setting pages uptodate on reads, no need to mess with the pageflags outselves. Also remove a debug function to dump page flags. Signed-off-by: Christoph Hellwig <hch@lst.de> --- fs/nfs/blocklayout/blocklayout.c | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-)