aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/xen/grant_table.h
diff options
context:
space:
mode:
authorkaf24@labyrinth.cl.cam.ac.uk <kaf24@labyrinth.cl.cam.ac.uk>2004-08-26 13:57:01 +0000
committerkaf24@labyrinth.cl.cam.ac.uk <kaf24@labyrinth.cl.cam.ac.uk>2004-08-26 13:57:01 +0000
commitbc76bb665d0d24147f7031e690c217cee8f68bb2 (patch)
treeb7ee1556235ef73c78d17b000032c61ab19dda13 /xen/include/xen/grant_table.h
parent4f766bc869ba65a012cae8a50a632c3201369548 (diff)
downloadxen-bc76bb665d0d24147f7031e690c217cee8f68bb2.tar.gz
xen-bc76bb665d0d24147f7031e690c217cee8f68bb2.tar.bz2
xen-bc76bb665d0d24147f7031e690c217cee8f68bb2.zip
bitkeeper revision 1.1159.1.106 (412dec2dJdF7UJz-ddgHVVOekKtAHQ)
Completed first cut of Xen support for grant tables. The device drivers now need modifying to use them.
Diffstat (limited to 'xen/include/xen/grant_table.h')
-rw-r--r--xen/include/xen/grant_table.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/xen/include/xen/grant_table.h b/xen/include/xen/grant_table.h
index 395959323c..52c7e828d7 100644
--- a/xen/include/xen/grant_table.h
+++ b/xen/include/xen/grant_table.h
@@ -77,9 +77,24 @@ void grant_table_destroy(
struct domain *d);
/* Create/destroy host-CPU mappings via a grant-table entry. */
+#define GNTTAB_MAP_RO 0
+#define GNTTAB_MAP_RW 1
+#define GNTTAB_UNMAP_RO 2
+#define GNTTAB_UNMAP_RW 3
int gnttab_try_map(
- struct domain *rd, struct domain *ld, struct pfn_info *page, int readonly);
-int gnttab_try_unmap(
- struct domain *rd, struct domain *ld, struct pfn_info *page, int readonly);
+ struct domain *rd, struct domain *ld, unsigned long frame, int op);
+
+/*
+ * Check that the given grant reference (rd,ref) allows 'ld' to transfer
+ * ownership of a page frame. If so, lock down the grant entry.
+ */
+int
+gnttab_prepare_for_transfer(
+ struct domain *rd, struct domain *ld, grant_ref_t ref);
+
+/* Notify 'rd' of a completed transfer via an already-locked grant entry. */
+void
+gnttab_notify_transfer(
+ struct domain *rd, grant_ref_t ref, unsigned long frame);
#endif /* __XEN_GRANT_H__ */