Lines Matching refs:pages
277 struct page *page = osd_data->pages[i]; in finish_read()
296 kfree(osd_data->pages); in finish_read()
299 static void ceph_unlock_page_vector(struct page **pages, int num_pages) in ceph_unlock_page_vector() argument
304 unlock_page(pages[i]); in ceph_unlock_page_vector()
322 struct page **pages; in start_read() local
353 pages = kmalloc(sizeof(*pages) * nr_pages, GFP_KERNEL); in start_read()
355 if (!pages) in start_read()
373 pages[i] = page; in start_read()
375 osd_req_op_extent_osd_data_pages(req, 0, pages, len, 0, false, false); in start_read()
389 ceph_unlock_page_vector(pages, nr_pages); in start_read()
390 ceph_release_page_vector(pages, nr_pages); in start_read()
584 static void ceph_release_pages(struct page **pages, int num) in ceph_release_pages() argument
591 if (pagevec_add(&pvec, pages[i]) == 0) in ceph_release_pages()
642 page = osd_data->pages[i]; in writepages_finish()
673 ceph_release_pages(osd_data->pages, num_pages); in writepages_finish()
675 mempool_free(osd_data->pages, in writepages_finish()
678 kfree(osd_data->pages); in writepages_finish()
783 struct page **pages = NULL; in ceph_writepages_start() local
807 page = pvec.pages[i]; in ceph_writepages_start()
874 BUG_ON(pages); in ceph_writepages_start()
901 pages = kmalloc(max_pages * sizeof (*pages), in ceph_writepages_start()
903 if (!pages) { in ceph_writepages_start()
905 pages = mempool_alloc(pool, GFP_NOFS); in ceph_writepages_start()
906 BUG_ON(!pages); in ceph_writepages_start()
925 pages[locked_pages] = page; in ceph_writepages_start()
948 pvec.pages[j]); in ceph_writepages_start()
949 pvec.pages[j-i+first] = pvec.pages[j]; in ceph_writepages_start()
955 offset = page_offset(pages[0]); in ceph_writepages_start()
970 osd_req_op_extent_osd_data_pages(req, 0, pages, len, 0, in ceph_writepages_start()
973 pages = NULL; /* request message now owns the pages array */ in ceph_writepages_start()
996 pvec.nr ? pvec.pages[0] : NULL); in ceph_writepages_start()
1627 struct page **pages; in __ceph_pool_perm_get() local
1698 pages = ceph_alloc_page_vector(1, GFP_KERNEL); in __ceph_pool_perm_get()
1699 if (IS_ERR(pages)) { in __ceph_pool_perm_get()
1700 err = PTR_ERR(pages); in __ceph_pool_perm_get()
1704 osd_req_op_raw_data_in_pages(rd_req, 0, pages, PAGE_SIZE, in __ceph_pool_perm_get()