• Home
  • Raw
  • Download

Lines Matching refs:offset

326 static inline bool page_copy_sane(struct page *page, size_t offset, size_t n)  in page_copy_sane()  argument
329 size_t v = n + offset; in page_copy_sane()
349 size_t copy_page_to_iter(struct page *page, size_t offset, size_t bytes, in copy_page_to_iter() argument
353 if (!page_copy_sane(page, offset, bytes)) in copy_page_to_iter()
357 page += offset / PAGE_SIZE; // first subpage in copy_page_to_iter()
358 offset %= PAGE_SIZE; in copy_page_to_iter()
361 size_t n = min(bytes, (size_t)PAGE_SIZE - offset); in copy_page_to_iter()
362 n = _copy_to_iter(kaddr + offset, n, i); in copy_page_to_iter()
368 offset += n; in copy_page_to_iter()
369 if (offset == PAGE_SIZE) { in copy_page_to_iter()
371 offset = 0; in copy_page_to_iter()
378 size_t copy_page_to_iter_nofault(struct page *page, unsigned offset, size_t bytes, in copy_page_to_iter_nofault() argument
383 if (!page_copy_sane(page, offset, bytes)) in copy_page_to_iter_nofault()
387 page += offset / PAGE_SIZE; // first subpage in copy_page_to_iter_nofault()
388 offset %= PAGE_SIZE; in copy_page_to_iter_nofault()
391 size_t n = min(bytes, (size_t)PAGE_SIZE - offset); in copy_page_to_iter_nofault()
393 n = iterate_and_advance(i, n, kaddr + offset, in copy_page_to_iter_nofault()
401 offset += n; in copy_page_to_iter_nofault()
402 if (offset == PAGE_SIZE) { in copy_page_to_iter_nofault()
404 offset = 0; in copy_page_to_iter_nofault()
411 size_t copy_page_from_iter(struct page *page, size_t offset, size_t bytes, in copy_page_from_iter() argument
415 if (!page_copy_sane(page, offset, bytes)) in copy_page_from_iter()
417 page += offset / PAGE_SIZE; // first subpage in copy_page_from_iter()
418 offset %= PAGE_SIZE; in copy_page_from_iter()
421 size_t n = min(bytes, (size_t)PAGE_SIZE - offset); in copy_page_from_iter()
422 n = _copy_from_iter(kaddr + offset, n, i); in copy_page_from_iter()
428 offset += n; in copy_page_from_iter()
429 if (offset == PAGE_SIZE) { in copy_page_from_iter()
431 offset = 0; in copy_page_from_iter()
460 size_t copy_page_from_iter_atomic(struct page *page, size_t offset, in copy_page_from_iter_atomic() argument
467 if (!page_copy_sane(page, offset, bytes)) in copy_page_from_iter_atomic()
477 page += offset / PAGE_SIZE; in copy_page_from_iter_atomic()
478 offset %= PAGE_SIZE; in copy_page_from_iter_atomic()
479 n = min_t(size_t, n, PAGE_SIZE - offset); in copy_page_from_iter_atomic()
482 p = kmap_atomic(page) + offset; in copy_page_from_iter_atomic()
486 offset += n; in copy_page_from_iter_atomic()
727 unsigned int offset, size_t count) in iov_iter_folio_queue() argument
736 .iov_offset = offset, in iov_iter_folio_queue()
1023 size_t offset = iov_offset, fsize = folioq_folio_size(folioq, slot); in iter_folioq_get_pages() local
1024 size_t part = PAGE_SIZE - offset % PAGE_SIZE; in iter_folioq_get_pages()
1026 if (offset < fsize) { in iter_folioq_get_pages()
1027 part = umin(part, umin(maxsize - extracted, fsize - offset)); in iter_folioq_get_pages()
1032 *pages = folio_page(folio, offset / PAGE_SIZE); in iter_folioq_get_pages()
1089 unsigned nr, offset, count; in iter_xarray_get_pages() local
1095 offset = pos & ~PAGE_MASK; in iter_xarray_get_pages()
1096 *_start_offset = offset; in iter_xarray_get_pages()
1098 count = want_pages_array(pages, maxsize, offset, maxpages); in iter_xarray_get_pages()
1105 maxsize = min_t(size_t, nr * PAGE_SIZE - offset, maxsize); in iter_xarray_get_pages()
1292 unsigned offset = i->iov_offset % PAGE_SIZE; in iov_iter_npages() local
1293 int npages = DIV_ROUND_UP(offset + i->count, PAGE_SIZE); in iov_iter_npages()
1297 unsigned offset = (i->xarray_start + i->iov_offset) % PAGE_SIZE; in iov_iter_npages() local
1298 int npages = DIV_ROUND_UP(offset + i->count, PAGE_SIZE); in iov_iter_npages()
1590 size_t extracted = 0, offset, slot = i->folioq_slot; in iov_iter_extract_folioq_pages() local
1599 offset = i->iov_offset & ~PAGE_MASK; in iov_iter_extract_folioq_pages()
1600 *offset0 = offset; in iov_iter_extract_folioq_pages()
1602 maxpages = want_pages_array(pages, maxsize, offset, maxpages); in iov_iter_extract_folioq_pages()
1609 size_t offset = i->iov_offset, fsize = folioq_folio_size(folioq, slot); in iov_iter_extract_folioq_pages() local
1610 size_t part = PAGE_SIZE - offset % PAGE_SIZE; in iov_iter_extract_folioq_pages()
1612 if (offset < fsize) { in iov_iter_extract_folioq_pages()
1613 part = umin(part, umin(maxsize - extracted, fsize - offset)); in iov_iter_extract_folioq_pages()
1618 p[nr++] = folio_page(folio, offset / PAGE_SIZE); in iov_iter_extract_folioq_pages()
1650 unsigned int nr = 0, offset; in iov_iter_extract_xarray_pages() local
1655 offset = pos & ~PAGE_MASK; in iov_iter_extract_xarray_pages()
1656 *offset0 = offset; in iov_iter_extract_xarray_pages()
1658 maxpages = want_pages_array(pages, maxsize, offset, maxpages); in iov_iter_extract_xarray_pages()
1680 maxsize = min_t(size_t, nr * PAGE_SIZE - offset, maxsize); in iov_iter_extract_xarray_pages()
1696 size_t skip = i->iov_offset, offset, size; in iov_iter_extract_bvec_pages() local
1713 offset = skip % PAGE_SIZE; in iov_iter_extract_bvec_pages()
1714 *offset0 = offset; in iov_iter_extract_bvec_pages()
1716 maxpages = want_pages_array(pages, size, offset, maxpages); in iov_iter_extract_bvec_pages()
1723 size = min_t(size_t, size, maxpages * PAGE_SIZE - offset); in iov_iter_extract_bvec_pages()
1740 size_t skip = i->iov_offset, offset, len, size; in iov_iter_extract_kvec_pages() local
1756 offset = (unsigned long)kaddr & ~PAGE_MASK; in iov_iter_extract_kvec_pages()
1757 *offset0 = offset; in iov_iter_extract_kvec_pages()
1759 maxpages = want_pages_array(pages, size, offset, maxpages); in iov_iter_extract_kvec_pages()
1764 kaddr -= offset; in iov_iter_extract_kvec_pages()
1765 len = offset + size; in iov_iter_extract_kvec_pages()
1779 size = min_t(size_t, size, maxpages * PAGE_SIZE - offset); in iov_iter_extract_kvec_pages()
1805 size_t offset; in iov_iter_extract_user_pages() local
1816 *offset0 = offset = addr % PAGE_SIZE; in iov_iter_extract_user_pages()
1818 maxpages = want_pages_array(pages, maxsize, offset, maxpages); in iov_iter_extract_user_pages()
1824 maxsize = min_t(size_t, maxsize, res * PAGE_SIZE - offset); in iov_iter_extract_user_pages()