summaryrefslogtreecommitdiffstats
path: root/sys/dev/xen
diff options
context:
space:
mode:
authorgibbs <gibbs@FreeBSD.org>2013-09-03 13:49:00 +0000
committergibbs <gibbs@FreeBSD.org>2013-09-03 13:49:00 +0000
commite3bbc9eb391688555f18ba164956fff19f72368a (patch)
treef787d67ae46e270d8d79fe371abc519ab06be25d /sys/dev/xen
parent97f176654a7899c2e5564777963d34499fd3bd66 (diff)
downloadFreeBSD-src-e3bbc9eb391688555f18ba164956fff19f72368a.zip
FreeBSD-src-e3bbc9eb391688555f18ba164956fff19f72368a.tar.gz
sys/dev/xen/blkback/blkback.c:
Initialize the request id for requests in xbb_get_resources() instead of its previous location in xbb_dispatch_io(). This guarantees that all request types (e.g. BLKIF_OP_FLUSH_DISKCACHE) have the front-end specified id recorded. Submitted by: Roger Pau Monné Sponsored by: Citrix Systems R&D
Diffstat (limited to 'sys/dev/xen')
-rw-r--r--sys/dev/xen/blkback/blkback.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/xen/blkback/blkback.c b/sys/dev/xen/blkback/blkback.c
index 33f6faf..3ea3c97 100644
--- a/sys/dev/xen/blkback/blkback.c
+++ b/sys/dev/xen/blkback/blkback.c
@@ -1239,6 +1239,7 @@ xbb_get_resources(struct xbb_softc *xbb, struct xbb_xen_reqlist **reqlist,
nreq->reqlist = *reqlist;
nreq->req_ring_idx = ring_idx;
+ nreq->id = ring_req->id;
if (xbb->abi != BLKIF_PROTOCOL_NATIVE) {
bcopy(ring_req, &nreq->ring_req_storage, sizeof(*ring_req));
@@ -1608,7 +1609,6 @@ xbb_dispatch_io(struct xbb_softc *xbb, struct xbb_xen_reqlist *reqlist)
req_ring_idx = nreq->req_ring_idx;
nr_sects = 0;
nseg = ring_req->nr_segments;
- nreq->id = ring_req->id;
nreq->nr_pages = nseg;
nreq->nr_512b_sectors = 0;
req_seg_idx = 0;
OpenPOWER on IntegriCloud