ceph: fix copy_user_to_page_vector()
The function was broken in the case where there was more than one page involved, broke the ceph sync_write case. Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net> Signed-off-by: Sage Weil <sage@newdream.net>
This commit is contained in:
parent
93cea5bebf
commit
6a4ef48103
@ -350,10 +350,10 @@ static int copy_user_to_page_vector(struct page **pages,
|
|||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
data += l - bad;
|
data += l - bad;
|
||||||
left -= l - bad;
|
left -= l - bad;
|
||||||
if (po) {
|
po += l - bad;
|
||||||
po += l - bad;
|
if (po == PAGE_CACHE_SIZE) {
|
||||||
if (po == PAGE_CACHE_SIZE)
|
po = 0;
|
||||||
po = 0;
|
i++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return len;
|
return len;
|
||||||
|
Loading…
Reference in New Issue
Block a user