diff options
Diffstat (limited to 'net/ceph/pagevec.c')
-rw-r--r-- | net/ceph/pagevec.c | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/net/ceph/pagevec.c b/net/ceph/pagevec.c index cd9c21df87d1..815a2249cfa9 100644 --- a/net/ceph/pagevec.c +++ b/net/ceph/pagevec.c | |||
@@ -12,7 +12,7 @@ | |||
12 | /* | 12 | /* |
13 | * build a vector of user pages | 13 | * build a vector of user pages |
14 | */ | 14 | */ |
15 | struct page **ceph_get_direct_page_vector(const char __user *data, | 15 | struct page **ceph_get_direct_page_vector(const void __user *data, |
16 | int num_pages, bool write_page) | 16 | int num_pages, bool write_page) |
17 | { | 17 | { |
18 | struct page **pages; | 18 | struct page **pages; |
@@ -93,7 +93,7 @@ EXPORT_SYMBOL(ceph_alloc_page_vector); | |||
93 | * copy user data into a page vector | 93 | * copy user data into a page vector |
94 | */ | 94 | */ |
95 | int ceph_copy_user_to_page_vector(struct page **pages, | 95 | int ceph_copy_user_to_page_vector(struct page **pages, |
96 | const char __user *data, | 96 | const void __user *data, |
97 | loff_t off, size_t len) | 97 | loff_t off, size_t len) |
98 | { | 98 | { |
99 | int i = 0; | 99 | int i = 0; |
@@ -118,17 +118,17 @@ int ceph_copy_user_to_page_vector(struct page **pages, | |||
118 | } | 118 | } |
119 | EXPORT_SYMBOL(ceph_copy_user_to_page_vector); | 119 | EXPORT_SYMBOL(ceph_copy_user_to_page_vector); |
120 | 120 | ||
121 | int ceph_copy_to_page_vector(struct page **pages, | 121 | void ceph_copy_to_page_vector(struct page **pages, |
122 | const char *data, | 122 | const void *data, |
123 | loff_t off, size_t len) | 123 | loff_t off, size_t len) |
124 | { | 124 | { |
125 | int i = 0; | 125 | int i = 0; |
126 | size_t po = off & ~PAGE_CACHE_MASK; | 126 | size_t po = off & ~PAGE_CACHE_MASK; |
127 | size_t left = len; | 127 | size_t left = len; |
128 | size_t l; | ||
129 | 128 | ||
130 | while (left > 0) { | 129 | while (left > 0) { |
131 | l = min_t(size_t, PAGE_CACHE_SIZE-po, left); | 130 | size_t l = min_t(size_t, PAGE_CACHE_SIZE-po, left); |
131 | |||
132 | memcpy(page_address(pages[i]) + po, data, l); | 132 | memcpy(page_address(pages[i]) + po, data, l); |
133 | data += l; | 133 | data += l; |
134 | left -= l; | 134 | left -= l; |
@@ -138,21 +138,20 @@ int ceph_copy_to_page_vector(struct page **pages, | |||
138 | i++; | 138 | i++; |
139 | } | 139 | } |
140 | } | 140 | } |
141 | return len; | ||
142 | } | 141 | } |
143 | EXPORT_SYMBOL(ceph_copy_to_page_vector); | 142 | EXPORT_SYMBOL(ceph_copy_to_page_vector); |
144 | 143 | ||
145 | int ceph_copy_from_page_vector(struct page **pages, | 144 | void ceph_copy_from_page_vector(struct page **pages, |
146 | char *data, | 145 | void *data, |
147 | loff_t off, size_t len) | 146 | loff_t off, size_t len) |
148 | { | 147 | { |
149 | int i = 0; | 148 | int i = 0; |
150 | size_t po = off & ~PAGE_CACHE_MASK; | 149 | size_t po = off & ~PAGE_CACHE_MASK; |
151 | size_t left = len; | 150 | size_t left = len; |
152 | size_t l; | ||
153 | 151 | ||
154 | while (left > 0) { | 152 | while (left > 0) { |
155 | l = min_t(size_t, PAGE_CACHE_SIZE-po, left); | 153 | size_t l = min_t(size_t, PAGE_CACHE_SIZE-po, left); |
154 | |||
156 | memcpy(data, page_address(pages[i]) + po, l); | 155 | memcpy(data, page_address(pages[i]) + po, l); |
157 | data += l; | 156 | data += l; |
158 | left -= l; | 157 | left -= l; |
@@ -162,7 +161,6 @@ int ceph_copy_from_page_vector(struct page **pages, | |||
162 | i++; | 161 | i++; |
163 | } | 162 | } |
164 | } | 163 | } |
165 | return len; | ||
166 | } | 164 | } |
167 | EXPORT_SYMBOL(ceph_copy_from_page_vector); | 165 | EXPORT_SYMBOL(ceph_copy_from_page_vector); |
168 | 166 | ||
@@ -170,7 +168,7 @@ EXPORT_SYMBOL(ceph_copy_from_page_vector); | |||
170 | * copy user data from a page vector into a user pointer | 168 | * copy user data from a page vector into a user pointer |
171 | */ | 169 | */ |
172 | int ceph_copy_page_vector_to_user(struct page **pages, | 170 | int ceph_copy_page_vector_to_user(struct page **pages, |
173 | char __user *data, | 171 | void __user *data, |
174 | loff_t off, size_t len) | 172 | loff_t off, size_t len) |
175 | { | 173 | { |
176 | int i = 0; | 174 | int i = 0; |