Lines Matching refs:pgto_base
210 * @pgto_base: page vector address of destination
214 * Note: the addresses pgto_base and pgfrom_base are both calculated in
218 * Alse note: pgto_base must be < pgfrom_base, but the memory areas
222 _shift_data_left_pages(struct page **pages, size_t pgto_base,
229 BUG_ON(pgfrom_base <= pgto_base);
231 pgto = pages + (pgto_base >> PAGE_SHIFT);
234 pgto_base &= ~PAGE_MASK;
238 if (pgto_base >= PAGE_SIZE) {
239 pgto_base = 0;
248 if (copy > (PAGE_SIZE - pgto_base))
249 copy = PAGE_SIZE - pgto_base;
256 memcpy(vto + pgto_base, vfrom + pgfrom_base, copy);
259 memmove(vto + pgto_base, vto + pgfrom_base, copy);
263 pgto_base += copy;
292 * @pgto_base: page vector address of destination
296 * Note: the addresses pgto_base and pgfrom_base are both calculated in
300 * Also note: pgfrom_base must be < pgto_base, but the memory areas
304 _shift_data_right_pages(struct page **pages, size_t pgto_base,
311 BUG_ON(pgto_base <= pgfrom_base);
313 pgto_base += len;
316 pgto = pages + (pgto_base >> PAGE_SHIFT);
319 pgto_base &= ~PAGE_MASK;
324 if (pgto_base == 0) {
325 pgto_base = PAGE_SIZE;
334 if (copy > pgto_base)
335 copy = pgto_base;
338 pgto_base -= copy;
344 memcpy(vto + pgto_base, vfrom + pgfrom_base, copy);
347 memmove(vto + pgto_base, vto + pgfrom_base, copy);