[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 3/3] xen: ignore direction in bufioreq handling
> -----Original Message----- > From: Jan Beulich [mailto:JBeulich@xxxxxxxx] > Sent: 23 November 2016 09:25 > To: qemu-devel@xxxxxxxxxx > Cc: Anthony Perard <anthony.perard@xxxxxxxxxx>; Paul Durrant > <Paul.Durrant@xxxxxxxxxx>; Stefano Stabellini <sstabellini@xxxxxxxxxx>; xen- > devel <xen-devel@xxxxxxxxxxxxxxxxxxxx> > Subject: [PATCH 3/3] xen: ignore direction in bufioreq handling > > There's no way to communicate back read data, so only writes can ever > be usefully specified. Ignore the field, paving the road for eventually > re-using the bit for something else in a few (many?) years time. > > Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Reviewed-by: Paul Durrant <paul.durrant@xxxxxxxxxx> > > --- a/xen-hvm.c > +++ b/xen-hvm.c > @@ -997,6 +997,7 @@ static int handle_buffered_iopage(XenIOS > memset(&req, 0x00, sizeof(req)); > req.state = STATE_IOREQ_READY; > req.count = 1; > + req.dir = IOREQ_WRITE; > > for (;;) { > uint32_t rdptr = buf_page->read_pointer, wrptr; > @@ -1014,7 +1015,6 @@ static int handle_buffered_iopage(XenIOS > req.size = 1U << buf_req->size; > req.addr = buf_req->addr; > req.data = buf_req->data; > - req.dir = buf_req->dir; > req.type = buf_req->type; > xen_rmb(); > qw = (req.size == 8); > @@ -1031,10 +1031,12 @@ static int handle_buffered_iopage(XenIOS > handle_ioreq(state, &req); > > /* Only req.data may get updated by handle_ioreq(), albeit even that > - * should not happen as such data would never make it to the guest. > + * should not happen as such data would never make it to the guest > (we > + * can only usefully see writes here after all). > */ > assert(req.state == STATE_IOREQ_READY); > assert(req.count == 1); > + assert(req.dir == IOREQ_WRITE); > assert(!req.data_is_ptr); > > atomic_add(&buf_page->read_pointer, qw + 1); > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |