From: Sage Weil Date: Wed, 23 Apr 2008 02:15:56 +0000 (-0700) Subject: kclient: declare wanted_max_size properly X-Git-Tag: v0.2~133 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f019f5b3766a3fc0c3cd1eb1fce4cc3c8432e2e5;p=ceph.git kclient: declare wanted_max_size properly --- diff --git a/src/kernel/file.c b/src/kernel/file.c index 2936309c5889..f4fef576f8a5 100644 --- a/src/kernel/file.c +++ b/src/kernel/file.c @@ -291,7 +291,7 @@ ssize_t ceph_write(struct file *filp, const char __user *buf, *ppos > ci->i_wanted_max_size) { dout(10, "write %p at large offset %llu, requesting max_size\n", inode, *ppos); - ci->i_wanted_max_size = *ppos; + ci->i_wanted_max_size = *ppos+len; check = 1; } spin_unlock(&inode->i_lock); @@ -303,7 +303,7 @@ ssize_t ceph_write(struct file *filp, const char __user *buf, ret = wait_event_interruptible(ci->i_cap_wq, ceph_get_cap_refs(ci, CEPH_CAP_WR, CEPH_CAP_WRBUFFER, - &got, *ppos)); + &got, *ppos+len)); if (ret < 0) goto out; dout(10, "write %p %llu~%u got cap refs on %d\n",