From 7ce42e57977142a2bdd21aceafa0a003465a13dc Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Wed, 16 Dec 2009 14:51:06 -0800 Subject: [PATCH] --- yaml --- r: 188658 b: refs/heads/master c: dbd646a851713bec5bfff40ecf624b2e78518fe5 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/ceph/addr.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 275d93d9ebd9..da83dc84e5cf 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 169e16ce816ca417286daf1db25de424a9d65a0c +refs/heads/master: dbd646a851713bec5bfff40ecf624b2e78518fe5 diff --git a/trunk/fs/ceph/addr.c b/trunk/fs/ceph/addr.c index bf535815592d..d0cdceb0b90b 100644 --- a/trunk/fs/ceph/addr.c +++ b/trunk/fs/ceph/addr.c @@ -448,8 +448,13 @@ static int writepage_nounlock(struct page *page, struct writeback_control *wbc) static int ceph_writepage(struct page *page, struct writeback_control *wbc) { - int err = writepage_nounlock(page, wbc); + int err; + struct inode *inode = page->mapping->host; + BUG_ON(!inode); + igrab(inode); + err = writepage_nounlock(page, wbc); unlock_page(page); + iput(inode); return err; }