search for: ring_ref

Displaying 20 results from an estimated 53 matches for "ring_ref".

Did you mean: ring_req
2012 Dec 13
3
[PATCH] xenconsoled: use grant references instead of map_foreign_range
...= NULL; struct buffer { char *data; @@ -501,6 +503,17 @@ static int xs_gather(struct xs_handle *xs, const char *dir, ...) va_end(ap); return ret; } + +static void domain_unmap_interface(struct domain *dom) +{ + if (dom->interface == NULL) + return; + if (xcg_handle && dom->ring_ref == -1) + xc_gnttab_munmap(xcg_handle, dom->interface, 1); + else + munmap(dom->interface, getpagesize()); + dom->interface = NULL; +} static int domain_create_ring(struct domain *dom) { @@ -522,9 +535,19 @@ static int domain_create_ring(struct domain *dom) } free(type); - if (...
2012 Mar 05
11
[PATCH 0001/001] xen: multi page ring support for block devices
...n-blkback/xenbus.c @@ -122,8 +122,8 @@ static struct xen_blkif *xen_blkif_alloc(domid_t domid) return blkif; } -static int xen_blkif_map(struct xen_blkif *blkif, unsigned long shared_page, - unsigned int evtchn) +static int xen_blkif_map(struct xen_blkif *blkif, int ring_ref[], + unsigned int ring_order, unsigned int evtchn) { int err; @@ -131,7 +131,8 @@ static int xen_blkif_map(struct xen_blkif *blkif, unsigned long shared_page, if (blkif->irq) return 0; - err = xenbus_map_ring_valloc(blkif->be-&gt...
2012 Mar 05
11
[PATCH 0001/001] xen: multi page ring support for block devices
...n-blkback/xenbus.c @@ -122,8 +122,8 @@ static struct xen_blkif *xen_blkif_alloc(domid_t domid) return blkif; } -static int xen_blkif_map(struct xen_blkif *blkif, unsigned long shared_page, - unsigned int evtchn) +static int xen_blkif_map(struct xen_blkif *blkif, int ring_ref[], + unsigned int ring_order, unsigned int evtchn) { int err; @@ -131,7 +131,8 @@ static int xen_blkif_map(struct xen_blkif *blkif, unsigned long shared_page, if (blkif->irq) return 0; - err = xenbus_map_ring_valloc(blkif->be-&gt...
2012 Mar 05
11
[PATCH 0001/001] xen: multi page ring support for block devices
...n-blkback/xenbus.c @@ -122,8 +122,8 @@ static struct xen_blkif *xen_blkif_alloc(domid_t domid) return blkif; } -static int xen_blkif_map(struct xen_blkif *blkif, unsigned long shared_page, - unsigned int evtchn) +static int xen_blkif_map(struct xen_blkif *blkif, int ring_ref[], + unsigned int ring_order, unsigned int evtchn) { int err; @@ -131,7 +131,8 @@ static int xen_blkif_map(struct xen_blkif *blkif, unsigned long shared_page, if (blkif->irq) return 0; - err = xenbus_map_ring_valloc(blkif->be-&gt...
2007 Feb 09
0
[PATCH] xenconsoled: ignore spurious watch event
...nnel.c:177:d0 EVTCHNOP failure: domain 0, error -22, line 177 Signed-off-by: Max Zhen <max.zhen@sun.com> diff --git a/tools/console/daemon/io.c b/tools/console/daemon/io.c --- a/tools/console/daemon/io.c +++ b/tools/console/daemon/io.c @@ -63,6 +63,7 @@ struct domain char *conspath; int ring_ref; evtchn_port_t local_port; + evtchn_port_t remote_port; int xce_handle; struct xencons_interface *interface; }; @@ -234,6 +235,9 @@ static int domain_create_ring(struct dom if (err) goto out; + if ((ring_ref == dom->ring_ref) && (remote_port == dom->remote_port)) + goto...
2007 Feb 20
0
[PATCH] Xenconsoled should ignore spurious watch event. Otherwise, it can rebind to the same evtchn of a dying domU during suspending and cause below error message:
...ing and cause below error message: (XEN) event_channel.c:177:d0 EVTCHNOP failure: domain 0, error -22, line 177 diff --git a/tools/console/daemon/io.c b/tools/console/daemon/io.c --- a/tools/console/daemon/io.c +++ b/tools/console/daemon/io.c @@ -66,6 +66,7 @@ struct domain char *conspath; int ring_ref; evtchn_port_t local_port; + evtchn_port_t remote_port; int xce_handle; struct xencons_interface *interface; }; @@ -290,6 +291,9 @@ static int domain_create_ring(struct dom if (err) goto out; + if ((ring_ref == dom->ring_ref) && (remote_port == dom->remote_port)) + goto...
2013 Jan 10
10
[PATCH v2 1/2] xenconsoled: use grant references instead of map_foreign_range
...= NULL; struct buffer { char *data; @@ -501,6 +503,18 @@ static int xs_gather(struct xs_handle *xs, const char *dir, ...) va_end(ap); return ret; } + +static void domain_unmap_interface(struct domain *dom) +{ + if (dom->interface == NULL) + return; + if (xcg_handle && dom->ring_ref == -1) + xc_gnttab_munmap(xcg_handle, dom->interface, 1); + else + munmap(dom->interface, getpagesize()); + dom->interface = NULL; + dom->ring_ref = -1; +} static int domain_create_ring(struct domain *dom) { @@ -522,9 +536,19 @@ static int domain_create_ring(struct domain *dom)...
2012 Aug 16
0
[RFC v1 5/5] VBD: enlarge max segment per request in blkfront
...;nodename, "blkback-ring-type", + "%u", blkback_ring_type); + err = xenbus_switch_state(dev, XenbusStateInitWait); if (err) goto fail; @@ -722,25 +810,68 @@ static int connect_ring(struct backend_info *be) { struct xenbus_device *dev = be->dev; unsigned long ring_ref; + unsigned long segring_ref; unsigned int evtchn; + unsigned int ring_type; char protocol[64] = ""; int err; DPRINTK("%s", dev->otherend); - be->blkif->ops = &blkback_ring_ops; - be->blkif->req = kmalloc(sizeof(struct blkif_request), - GFP_KERNE...
2011 Apr 04
0
[PATCH] linux-2.6.18/backends: use xenbus_be.ko interfaces instead of open-coding them
...long)blkif->blk_ring_area->addr, - GNTMAP_host_map, blkif->shmem_handle); - - if (HYPERVISOR_grant_table_op(GNTTABOP_unmap_grant_ref, &op, 1)) - BUG(); -} - -int blkif_map(blkif_t *blkif, unsigned long shared_page, unsigned int evtchn) +int blkif_map(blkif_t *blkif, grant_ref_t ring_ref, evtchn_port_t evtchn) { + struct vm_struct *area; int err; /* Already connected through? */ if (blkif->irq) return 0; - if ( (blkif->blk_ring_area = alloc_vm_area(PAGE_SIZE)) == NULL ) - return -ENOMEM; - - err = map_frontend_page(blkif, shared_page); - if (err) { - free_vm_a...
2013 Apr 26
14
bug in xc_gntshr_munmap?
Hi, Header says: /* * Unmaps the @count pages starting at @start_address, which were mapped by a * call to xc_gntshr_share_*. Never logs. */ int xc_gntshr_munmap(xc_gntshr *xcg, void *start_address, uint32_t count); But implementation calls: static int linux_gntshr_munmap(xc_gntshr *xcg, xc_osdep_handle h, void *start_address, uint32_t count) { return
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
2012 Nov 20
52
[PATCH RFC] stubdom: Change vTPM shared page ABI
...char uuid[16]; /* uuid of the tpm interface */ diff --git a/extras/mini-os/include/tpmfront.h b/extras/mini-os/include/tpmfront.h index fd2cb17..a0c7c4d 100644 --- a/extras/mini-os/include/tpmfront.h +++ b/extras/mini-os/include/tpmfront.h @@ -37,9 +37,7 @@ struct tpmfront_dev { grant_ref_t ring_ref; evtchn_port_t evtchn; - tpmif_tx_interface_t* tx; - - void** pages; + vtpm_shared_page_t *page; domid_t bedomid; char* nodename; @@ -77,6 +75,9 @@ void shutdown_tpmfront(struct tpmfront_dev* dev); * */ int tpmfront_cmd(struct tpmfront_dev* dev, uint8_t* req, size_t reqlen,...
2013 Jul 15
8
[PATCH 0 of 7 v5] Introduce the tapback daemon (most of blkback in user-space)
This patch series introduces the tapback daemon, the user space daemon that acts as a device''s back-end, essentially most of blkback in user space. The daemon is responsible for coordinating the front-end and tapdisk. It creates tapdisk process as needed, instructs them to connect to/disconnect from the shared ring, and manages the state of the back-end. The shared ring between the
2012 Sep 19
27
[PATCH] Persistent grant maps for xen blk drivers
...goto abort; + } + /* FIXME: use a typename instead */ err = xenbus_printf(xbt, dev->nodename, "info", "%u", be->blkif->vbd.type | @@ -721,6 +728,7 @@ static int connect_ring(struct backend_info *be) struct xenbus_device *dev = be->dev; unsigned long ring_ref; unsigned int evtchn; + u8 pers_grants; char protocol[64] = ""; int err; @@ -750,8 +758,17 @@ static int connect_ring(struct backend_info *be) xenbus_dev_fatal(dev, err, "unknown fe protocol %s", protocol); return -1; } - pr_info(DRV_PFX "ring-ref %ld, event...
2013 Apr 05
0
[PATCHv2 1/2] Xen PV backend (for qemu-upstream-4.2-testing): Move call to bdrv_new from blk_init to blk_connect
...lkdev->devtype); - blkdev->devtype = NULL; - return -1; -} - -static int blk_connect(struct XenDevice *xendev) -{ - struct XenBlkDev *blkdev = container_of(xendev, struct XenBlkDev, xendev); if (xenstore_read_fe_int(&blkdev->xendev, "ring-ref", &blkdev->ring_ref) == -1) { return -1; -- 1.7.9.5
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
2007 Oct 24
16
PATCH 0/10: Merge PV framebuffer & console into QEMU
The following series of 10 patches is a merge of the xenfb and xenconsoled functionality into the qemu-dm code. The general approach taken is to have qemu-dm provide two machine types - one for xen paravirt, the other for fullyvirt. For compatability the later is the default. The goals overall are to kill LibVNCServer, remove alot of code duplication and/or parallel impls of the same concepts, and
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
2013 Jul 15
6
[PATCH 0 of 6 RESEND v2] blktap3/sring: shared ring between tapdisk and the front-end
This patch series introduces the shared ring used by the front-end to pass request descriptors to tapdisk, as well as responses from tapdisk to the front-end. Requests from this ring end up in tapdisk''s standard request queue. When the tapback daemon detects that the front-end tries to connect to the back-end, it spawns a tapdisk and tells it to connect to the shared ring. The shared
2012 Aug 16
0
[RFC v1 3/5] VBD: enlarge max segment per request in blkfront
...req = kmalloc(sizeof(struct blkif_request_segment)* + be->blkif->ops->max_seg, GFP_KERNEL); + be->blkif->blk_backring_type = BACKRING_TYPE_1; err = xenbus_gather(XBT_NIL, dev->otherend, "ring-ref", "%lu", &ring_ref, "event-channel", "%u", &evtchn, NULL); -ronghui _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel