summaryrefslogtreecommitdiffstats
path: root/include/xen
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-01-31 11:38:18 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-31 11:38:18 -0500
commit14164b46fc994bcf82963ace00372cf808a31af1 (patch)
treee2a26a3a42a55bc3d2887cf9793d03843e1fa272 /include/xen
parente2a0f813e0d53014b78aae76f0359c8a41f05eeb (diff)
parentf93576e1ac34fd7a93d6f3432e71295bbe6a27ce (diff)
Merge tag 'stable/for-linus-3.14-rc0-late-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip
Pull Xen bugfixes from Konrad Rzeszutek Wilk: "Bug-fixes for the new features that were added during this cycle. There are also two fixes for long-standing issues for which we have a solution: grant-table operations extra work that was not needed causing performance issues and the self balloon code was too aggressive causing OOMs. Details: - Xen ARM couldn't use the new FIFO events - Xen ARM couldn't use the SWIOTLB if compiled as 32-bit with 64-bit PCIe devices. - Grant table were doing needless M2P operations. - Ratchet down the self-balloon code so it won't OOM. - Fix misplaced kfree in Xen PVH error code paths" * tag 'stable/for-linus-3.14-rc0-late-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: xen/pvh: Fix misplaced kfree from xlated_setup_gnttab_pages drivers: xen: deaggressive selfballoon driver xen/grant-table: Avoid m2p_override during mapping xen/gnttab: Use phys_addr_t to describe the grant frame base address xen: swiotlb: handle sizeof(dma_addr_t) != sizeof(phys_addr_t) arm/xen: Initialize event channels earlier
Diffstat (limited to 'include/xen')
-rw-r--r--include/xen/grant_table.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/xen/grant_table.h b/include/xen/grant_table.h
index 5acb1e4ac0d3..7ad033dbc845 100644
--- a/include/xen/grant_table.h
+++ b/include/xen/grant_table.h
@@ -185,17 +185,21 @@ struct grant_frames {
185}; 185};
186extern struct grant_frames xen_auto_xlat_grant_frames; 186extern struct grant_frames xen_auto_xlat_grant_frames;
187unsigned int gnttab_max_grant_frames(void); 187unsigned int gnttab_max_grant_frames(void);
188int gnttab_setup_auto_xlat_frames(unsigned long addr); 188int gnttab_setup_auto_xlat_frames(phys_addr_t addr);
189void gnttab_free_auto_xlat_frames(void); 189void gnttab_free_auto_xlat_frames(void);
190 190
191#define gnttab_map_vaddr(map) ((void *)(map.host_virt_addr)) 191#define gnttab_map_vaddr(map) ((void *)(map.host_virt_addr))
192 192
193int gnttab_map_refs(struct gnttab_map_grant_ref *map_ops, 193int gnttab_map_refs(struct gnttab_map_grant_ref *map_ops,
194 struct gnttab_map_grant_ref *kmap_ops,
195 struct page **pages, unsigned int count); 194 struct page **pages, unsigned int count);
195int gnttab_map_refs_userspace(struct gnttab_map_grant_ref *map_ops,
196 struct gnttab_map_grant_ref *kmap_ops,
197 struct page **pages, unsigned int count);
196int gnttab_unmap_refs(struct gnttab_unmap_grant_ref *unmap_ops, 198int gnttab_unmap_refs(struct gnttab_unmap_grant_ref *unmap_ops,
197 struct gnttab_map_grant_ref *kunmap_ops,
198 struct page **pages, unsigned int count); 199 struct page **pages, unsigned int count);
200int gnttab_unmap_refs_userspace(struct gnttab_unmap_grant_ref *unmap_ops,
201 struct gnttab_map_grant_ref *kunmap_ops,
202 struct page **pages, unsigned int count);
199 203
200/* Perform a batch of grant map/copy operations. Retry every batch slot 204/* Perform a batch of grant map/copy operations. Retry every batch slot
201 * for which the hypervisor returns GNTST_eagain. This is typically due 205 * for which the hypervisor returns GNTST_eagain. This is typically due