Commit 569d39fc authored by Lukas Czerner's avatar Lukas Czerner Committed by Theodore Ts'o

ceph: use ->invalidatepage() length argument

->invalidatepage() aop now accepts range to invalidate so we can make
use of it in ceph_invalidatepage().
Signed-off-by: default avatarLukas Czerner <lczerner@redhat.com>
Acked-by: default avatarSage Weil <sage@inktank.com>
Cc: ceph-devel@vger.kernel.org
parent e5f8d30d
...@@ -164,20 +164,20 @@ static void ceph_invalidatepage(struct page *page, unsigned int offset, ...@@ -164,20 +164,20 @@ static void ceph_invalidatepage(struct page *page, unsigned int offset,
if (!PageDirty(page)) if (!PageDirty(page))
pr_err("%p invalidatepage %p page not dirty\n", inode, page); pr_err("%p invalidatepage %p page not dirty\n", inode, page);
if (offset == 0) if (offset == 0 && length == PAGE_CACHE_SIZE)
ClearPageChecked(page); ClearPageChecked(page);
ci = ceph_inode(inode); ci = ceph_inode(inode);
if (offset == 0) { if (offset == 0 && length == PAGE_CACHE_SIZE) {
dout("%p invalidatepage %p idx %lu full dirty page %u\n", dout("%p invalidatepage %p idx %lu full dirty page\n",
inode, page, page->index, offset); inode, page, page->index);
ceph_put_wrbuffer_cap_refs(ci, 1, snapc); ceph_put_wrbuffer_cap_refs(ci, 1, snapc);
ceph_put_snap_context(snapc); ceph_put_snap_context(snapc);
page->private = 0; page->private = 0;
ClearPagePrivate(page); ClearPagePrivate(page);
} else { } else {
dout("%p invalidatepage %p idx %lu partial dirty page\n", dout("%p invalidatepage %p idx %lu partial dirty page %u(%u)\n",
inode, page, page->index); inode, page, page->index, offset, length);
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment