Skip to content

Commit

Permalink
ceph: remove bogus checks and WARN_ONs from ceph_set_page_dirty
Browse files Browse the repository at this point in the history
The checks for page->mapping are odd, as set_page_dirty is an
address_space operation, and I don't see where it would be called on a
non-pagecache page.

The warning about the page lock also seems bogus.  The comment over
set_page_dirty() says that it can be called without the page lock in
some rare cases. I don't think we want to warn if that's the case.

Reported-by: Matthew Wilcox <[email protected]>
Signed-off-by: Jeff Layton <[email protected]>
Signed-off-by: Ilya Dryomov <[email protected]>
  • Loading branch information
jtlayton authored and idryomov committed Jun 28, 2021
1 parent 62fb987 commit 22d41cd
Showing 1 changed file with 1 addition and 9 deletions.
10 changes: 1 addition & 9 deletions fs/ceph/addr.c
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,6 @@ static int ceph_set_page_dirty(struct page *page)
struct inode *inode;
struct ceph_inode_info *ci;
struct ceph_snap_context *snapc;
int ret;

if (unlikely(!mapping))
return !TestSetPageDirty(page);

if (PageDirty(page)) {
dout("%p set_page_dirty %p idx %lu -- already dirty\n",
Expand Down Expand Up @@ -130,11 +126,7 @@ static int ceph_set_page_dirty(struct page *page)
BUG_ON(PagePrivate(page));
attach_page_private(page, snapc);

ret = __set_page_dirty_nobuffers(page);
WARN_ON(!PageLocked(page));
WARN_ON(!page->mapping);

return ret;
return __set_page_dirty_nobuffers(page);
}

/*
Expand Down

0 comments on commit 22d41cd

Please sign in to comment.