On Wed, 9 Jan 2013, Roger Pau Monne wrote: > On 09/01/13 13:48, Stefano Stabellini wrote: > > On Tue, 8 Jan 2013, Roger Pau Monne wrote: > >> This protocol extension reuses the same set of grant pages for all > >> transactions between the front/back drivers, avoiding expensive tlb > >> flushes, grant table lock contention and switches between userspace > >> and kernel space. The full description of the protocol can be found in > >> the public blkif.h header. > >> > >> http://xenbits.xen.org/gitweb/?p=xen.git;a=blob_plain;f=xen/include/public/io/blkif.h > >> > >> Speed improvement with 15 guests performing I/O is ~450%. > >> > >> Signed-off-by: Roger Pau Monné <roger....@citrix.com> > >> Cc: xen-de...@lists.xen.org > >> Cc: Stefano Stabellini <stefano.stabell...@eu.citrix.com> > >> Cc: Anthony PERARD <anthony.per...@citrix.com> > >> --- > >> Performance comparison with the previous implementation can be seen in > >> the followign graph: > >> > >> http://xenbits.xen.org/people/royger/persistent_read_qemu.png > >> --- > >> Changes since v1: > >> * Fix coding style issues. > >> * Add more comments regarding how ioreq_map works. > > > > The patch looks good now, I only have a very small stylistic comment. > > > > > >> + for (i = 0; i < ioreq->v.niov; i++) { > >> + ioreq->v.iov[i].iov_base = page[i] + > >> + (uintptr_t)ioreq->v.iov[i].iov_base; > > > > ioreq->v.iov[i].iov_base += (uintptr_t)page[i] ? > > True. Would you like to fix that yourself before committing, or do you > want me to resend?
I'll fix it myself