Lines Matching refs:page

40 #include <asm/page.h>
48 #include <xen/page.h>
50 #include <linux/page-flags.h>
81 struct page **pages;
102 * access has been ended, free the given page too. Access will be ended
104 * some time later. page may be NULL, in which case no freeing will occur.
105 * Note that the granted page might still be accessed (read or write) by the
106 * other side after gnttab_end_foreign_access() returns, so even if page was
107 * specified as NULL it is not allowed to just reuse the page for other
109 * reference to the granted page in this case, which is dropped only after
111 * This requires that multi page allocations for areas subject to
115 void gnttab_end_foreign_access(grant_ref_t ref, struct page *page);
152 /* Give access to the first 4K of the page */
155 struct page *page, int readonly)
157 gnttab_grant_foreign_access_ref(ref, domid, xen_page_to_gfn(page),
214 int gnttab_alloc_pages(int nr_pages, struct page **pages);
215 void gnttab_free_pages(int nr_pages, struct page **pages);
220 struct page *pages;
228 int gnttab_page_cache_get(struct gnttab_page_cache *cache, struct page **page);
229 void gnttab_page_cache_put(struct gnttab_page_cache *cache, struct page **page,
242 struct page **pages;
252 int gnttab_pages_set_private(int nr_pages, struct page **pages);
253 void gnttab_pages_clear_private(int nr_pages, struct page **pages);
257 struct page **pages, unsigned int count);
260 struct page **pages, unsigned int count);
283 static inline struct xen_page_foreign *xen_page_foreign(struct page *page)
285 if (!PageForeign(page))
288 return (struct xen_page_foreign *)page->private;
291 return (struct xen_page_foreign *)&page->private;
295 /* Split Linux page in chunk of the size of the grant and call fn
306 void gnttab_foreach_grant_in_range(struct page *page,
313 static inline void gnttab_for_one_grant(struct page *page, unsigned int offset,
321 gnttab_foreach_grant_in_range(page, offset, len, fn, data);
324 /* Get @nr_grefs grants from an array of page and call fn for each grant */
325 void gnttab_foreach_grant(struct page **pages,
332 * start: Offset from the beginning of the first page
333 * len: total length of data (can cross multiple page)