From 2d7cf8ef75abbe0d33d9115872d4545e9cefced2 Mon Sep 17 00:00:00 2001 From: Evgeniy Polyakov Date: Fri, 28 Aug 2009 17:57:58 +0400 Subject: Staging: pohmelfs: sync with the development tree * cache coherency protocol fix * proper timeout handling * implement dump/del all config group command (Signed-off-by: Pierpaolo Giacomin ) Signed-off-by: Evgeniy Polyakov Signed-off-by: Greg Kroah-Hartman --- drivers/staging/pohmelfs/inode.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'drivers/staging/pohmelfs/inode.c') diff --git a/drivers/staging/pohmelfs/inode.c b/drivers/staging/pohmelfs/inode.c index 0b58f1043707..c94de3139223 100644 --- a/drivers/staging/pohmelfs/inode.c +++ b/drivers/staging/pohmelfs/inode.c @@ -1504,7 +1504,9 @@ static void pohmelfs_flush_inode(struct pohmelfs_inode *pi, unsigned int count) inode->i_sb->s_op->write_inode(inode, 0); } +#ifdef POHMELFS_TRUNCATE_ON_INODE_FLUSH truncate_inode_pages(inode->i_mapping, 0); +#endif pohmelfs_data_unlock(pi, 0, ~0, POHMELFS_WRITE_LOCK); mutex_unlock(&inode->i_mutex); @@ -1743,11 +1745,10 @@ static int pohmelfs_root_handshake(struct pohmelfs_sb *psb) err = wait_event_interruptible_timeout(psb->wait, (psb->flags != ~0), psb->wait_on_page_timeout); - if (!err) { + if (!err) err = -ETIMEDOUT; - } else { + else if (err > 0) err = -psb->flags; - } if (err) goto err_out_exit; -- cgit v1.2.3-59-g8ed1b