From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoph Hellwig Subject: Re: [PATCH 18/25] vfs: hide file range comparison function Date: Sun, 14 Oct 2018 10:43:24 -0700 Message-ID: <20181014174324.GC6400@infradead.org> References: <153938912912.8361.13446310416406388958.stgit@magnolia> <153938927103.8361.6327676425188043040.stgit@magnolia> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <153938927103.8361.6327676425188043040.stgit@magnolia> Sender: linux-btrfs-owner@vger.kernel.org To: "Darrick J. Wong" Cc: david@fromorbit.com, sandeen@redhat.com, linux-nfs@vger.kernel.org, linux-cifs@vger.kernel.org, Amir Goldstein , linux-unionfs@vger.kernel.org, linux-xfs@vger.kernel.org, linux-mm@kvack.org, linux-btrfs@vger.kernel.org, linux-fsdevel@vger.kernel.org, ocfs2-devel@oss.oracle.com List-Id: linux-unionfs@vger.kernel.org > +static struct page *vfs_dedupe_get_page(struct inode *inode, loff_t offset) > +{ > + struct address_space *mapping; > + struct page *page; > + pgoff_t n; > + > + n = offset >> PAGE_SHIFT; > + mapping = inode->i_mapping; > + page = read_mapping_page(mapping, n, NULL); > + if (IS_ERR(page)) > + return page; > + if (!PageUptodate(page)) { > + put_page(page); > + return ERR_PTR(-EIO); > + } > + lock_page(page); > + return page; > +} Might be worth to clean ths up a bit while you are at it: +static struct page *vfs_dedupe_get_page(struct inode *inode, loff_t offset) { struct page *page; page = read_mapping_page(inode->i_mapping, offset >> PAGE_SHIFT, NULL); ... Otherwise looks fine: Reviewed-by: Christoph Hellwig