diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2010-01-18 11:53:08 +1100 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2010-03-05 14:49:41 -0800 |
commit | f1a3d57213fe264b4cf584e78bac36aaf9998729 (patch) | |
tree | 9adf9ba40793ecf83f7a1fd71b4bd73e726b6dac | |
parent | 422d2cb8f9afadba1ecd3614f658b6daaaa480fb (diff) | |
download | lwn-f1a3d57213fe264b4cf584e78bac36aaf9998729.tar.gz lwn-f1a3d57213fe264b4cf584e78bac36aaf9998729.zip |
ceph: update for write_inode API change
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Sage Weil <sage@newdream.net>
-rw-r--r-- | fs/ceph/caps.c | 4 | ||||
-rw-r--r-- | fs/ceph/super.h | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/fs/ceph/caps.c b/fs/ceph/caps.c index 8b89b9123252..db122bb357b8 100644 --- a/fs/ceph/caps.c +++ b/fs/ceph/caps.c @@ -5,6 +5,7 @@ #include <linux/sched.h> #include <linux/vmalloc.h> #include <linux/wait.h> +#include <linux/writeback.h> #include "super.h" #include "decode.h" @@ -1801,12 +1802,13 @@ int ceph_fsync(struct file *file, struct dentry *dentry, int datasync) * get by with fewer MDS messages if we wait for data writeback to * complete first. */ -int ceph_write_inode(struct inode *inode, int wait) +int ceph_write_inode(struct inode *inode, struct writeback_control *wbc) { struct ceph_inode_info *ci = ceph_inode(inode); unsigned flush_tid; int err = 0; int dirty; + int wait = wbc->sync_mode == WB_SYNC_ALL; dout("write_inode %p wait=%d\n", inode, wait); if (wait) { diff --git a/fs/ceph/super.h b/fs/ceph/super.h index 02c0ddcf3eaf..65d12036b670 100644 --- a/fs/ceph/super.h +++ b/fs/ceph/super.h @@ -11,6 +11,7 @@ #include <linux/mempool.h> #include <linux/pagemap.h> #include <linux/wait.h> +#include <linux/writeback.h> #include "types.h" #include "messenger.h" @@ -811,7 +812,7 @@ static inline void ceph_remove_cap(struct ceph_cap *cap) extern void ceph_put_cap(struct ceph_cap *cap); extern void ceph_queue_caps_release(struct inode *inode); -extern int ceph_write_inode(struct inode *inode, int unused); +extern int ceph_write_inode(struct inode *inode, struct writeback_control *wbc); extern int ceph_fsync(struct file *file, struct dentry *dentry, int datasync); extern void ceph_kick_flushing_caps(struct ceph_mds_client *mdsc, struct ceph_mds_session *session); |