Displaying 12 results from an estimated 12 matches for "gnttab_set_map_op".
2011 Dec 01
11
[PATCH 0 of 2] Paging support updates for XCP dom0
This is a cherry pick of two patches that add support for guest paged out
frames in the XCP 2.6.32 dom0 patch queue.
First patch propagates the ENOENT returned by the hypervisor in the case
of a paged out page, all the way up the call chain to the MMAPBATCH_V2
ioctl. The ioctl is mainly used to harvest those return values and retry.
The second patch adds retry loops to all backend grant
2010 Sep 15
15
xenpaging fixes for kernel and hypervisor
Patrick,
there following patches fix xenpaging for me.
Granttable handling is incomplete. If a page is gone, a GNTST_eagain
should be returned to the caller to inidcate the hypercall has to be
retried after a while, until the page is available again.
Please review.
Olaf
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
2010 Dec 08
2
[PATCH] xen: gntdev: move use of GNTMAP_contains_pte next to the map_op
.../gntdev.c
+++ b/drivers/xen/gntdev.c
@@ -204,7 +204,8 @@ static int find_grant_ptes(pte_t *pte, pgtable_t token, unsigned long addr, void
BUG_ON(pgnr >= map->count);
pte_maddr = (u64)pfn_to_mfn(page_to_pfn(token)) << PAGE_SHIFT;
pte_maddr += (unsigned long)pte & ~PAGE_MASK;
- gnttab_set_map_op(&map->map_ops[pgnr], pte_maddr, map->flags,
+ gnttab_set_map_op(&map->map_ops[pgnr], pte_maddr,
+ GNTMAP_contains_pte | map->flags,
map->grants[pgnr].ref,
map->grants[pgnr].domid);
gnttab_set_unmap_op(&map->unmap_ops[pgnr], pte_maddr, map->flags...
2011 Apr 04
0
[PATCH] linux-2.6.18/backends: use xenbus_be.ko interfaces instead of open-coding them
...e <linux/delay.h>
+#include <linux/vmalloc.h>
static kmem_cache_t *blkif_cachep;
@@ -55,75 +55,39 @@ blkif_t *blkif_alloc(domid_t domid)
return blkif;
}
-static int map_frontend_page(blkif_t *blkif, unsigned long shared_page)
-{
- struct gnttab_map_grant_ref op;
- int ret;
-
- gnttab_set_map_op(&op, (unsigned long)blkif->blk_ring_area->addr,
- GNTMAP_host_map, shared_page, blkif->domid);
-
- gnttab_check_GNTST_eagain_do_while(GNTTABOP_map_grant_ref, &op);
-
- if (op.status == GNTST_okay) {
- blkif->shmem_ref = shared_page;
- blkif->shmem_handle = op.handle;
-...
2007 Jun 07
4
blkif_map error starting fourth guest domain
I''m having problems starting more than three domains. It sometimes
works fine, but more often than not the 4th domain''s root block device
times out and so the domU kernel panics as there''s no /dev/root:
XENBUS: Timeout connecting to device: device/vbd/2057 (state 6)
XENBUS: Timeout connecting to device: device/vif/0 (state 6)
XENBUS: Timeout connecting to device:
2012 Mar 05
11
[PATCH 0001/001] xen: multi page ring support for block devices
...enbus_map_ring(struct xenbus_device *dev, int gnt_ref,
- grant_handle_t *handle, void *vaddr)
+int xenbus_map_ring(struct xenbus_device *dev, int gnt_ref[], int nr_grefs,
+ grant_handle_t handle[], void *vaddr)
{
- struct gnttab_map_grant_ref op;
-
- gnttab_set_map_op(&op, (phys_addr_t)vaddr, GNTMAP_host_map, gnt_ref,
- dev->otherend_id);
+ struct gnttab_map_grant_ref op[XENBUS_MAX_RING_PAGES];
+ int i;
+ int err = GNTST_okay; /* 0 */
+
+ for (i = 0; i < nr_grefs; i++) {
+ unsigned long ad...
2012 Mar 05
11
[PATCH 0001/001] xen: multi page ring support for block devices
...enbus_map_ring(struct xenbus_device *dev, int gnt_ref,
- grant_handle_t *handle, void *vaddr)
+int xenbus_map_ring(struct xenbus_device *dev, int gnt_ref[], int nr_grefs,
+ grant_handle_t handle[], void *vaddr)
{
- struct gnttab_map_grant_ref op;
-
- gnttab_set_map_op(&op, (phys_addr_t)vaddr, GNTMAP_host_map, gnt_ref,
- dev->otherend_id);
+ struct gnttab_map_grant_ref op[XENBUS_MAX_RING_PAGES];
+ int i;
+ int err = GNTST_okay; /* 0 */
+
+ for (i = 0; i < nr_grefs; i++) {
+ unsigned long ad...
2012 Mar 05
11
[PATCH 0001/001] xen: multi page ring support for block devices
...enbus_map_ring(struct xenbus_device *dev, int gnt_ref,
- grant_handle_t *handle, void *vaddr)
+int xenbus_map_ring(struct xenbus_device *dev, int gnt_ref[], int nr_grefs,
+ grant_handle_t handle[], void *vaddr)
{
- struct gnttab_map_grant_ref op;
-
- gnttab_set_map_op(&op, (phys_addr_t)vaddr, GNTMAP_host_map, gnt_ref,
- dev->otherend_id);
+ struct gnttab_map_grant_ref op[XENBUS_MAX_RING_PAGES];
+ int i;
+ int err = GNTST_okay; /* 0 */
+
+ for (i = 0; i < nr_grefs; i++) {
+ unsigned long ad...
2012 Sep 19
27
[PATCH] Persistent grant maps for xen blk drivers
..., i);
+ addr = vaddr(pending_req, i);
+ pages_to_gnt[i] = blkbk->pending_page(pending_req, i);
+ }
+
flags = GNTMAP_host_map;
- if (pending_req->operation != BLKIF_OP_READ)
+ if (!use_pers_gnts && (pending_req->operation != BLKIF_OP_READ))
flags |= GNTMAP_readonly;
- gnttab_set_map_op(&map[i], vaddr(pending_req, i), flags,
- req->u.rw.seg[i].gref,
- pending_req->blkif->domid);
+ if (new_map) {
+ gnttab_set_map_op(&map[segs_to_init++], addr,
+ flags, req->u.rw.seg[i].gref,
+ pending_req->blkif->domid);
+ }
}
- ret = gnttab_m...
2012 Aug 16
0
[RFC v1 3/5] VBD: enlarge max segment per request in blkfront
...gnttab_map_grant_ref *map = pending_req->map;
int i;
int nseg = req->u.rw.nr_segments;
int ret = 0;
@@ -362,7 +391,7 @@ static int xen_blkbk_map(struct blkif_request *req,
if (pending_req->operation != BLKIF_OP_READ)
flags |= GNTMAP_readonly;
gnttab_set_map_op(&map[i], vaddr(pending_req, i), flags,
- req->u.rw.seg[i].gref,
+ seg_req[i].gref,
pending_req->blkif->domid);
}
@@ -387,14 +416,15 @@ static int xen_blkbk_map(struct blkif_request *req,
continue;...
2008 May 30
5
[PATCH 1/4] pvSCSI driver
pvSCSI backend driver
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
Signed-off-by: Jun Kamada <kama@jp.fujitsu.com>
-----
Jun Kamada
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
2007 Mar 28
2
[PATCH 2/3] User-space grant table device - main driver
A character device for accessing (in user-space) pages that have been
granted by other domains.
Signed-off-by: Derek Murray <Derek.Murray@cl.cam.ac.uk>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel