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] ?

Reply via email to