[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [win-pv-devel] [PATCH 0/7] Add multi-ring support



> -----Original Message-----
> From: win-pv-devel-bounces@xxxxxxxxxxxxxxxxxxxx [mailto:win-pv-devel-
> bounces@xxxxxxxxxxxxxxxxxxxx] On Behalf Of Owen Smith
> Sent: 18 December 2014 14:28
> To: win-pv-devel@xxxxxxxxxxxxxxxxxxxx
> Cc: Owen Smith
> Subject: [win-pv-devel] [PATCH 0/7] Add multi-ring support
> 
> Adds support for multiple rings, with traffic split based on
> a supplied hash value.
> Backend exposes "multi-queue-max-queues" to indicate the maximum
> number
> of queues supported (default 1, i.e. single-queue).
> Frontend will write "multi-queue-num-queues" to request multi-queues,
> this value must be less than or equal to the smaller of what the backend
> supports and the number of vCPUs exposed to the guest. The guest may
> limit
> this value with the registry setting "MultiQueueMaxQueues" under the
> XenVif
> service parameters key.
> 
> Patches:
> 1: Dont pass through query interface IRPs, as each interface exposed
>    needs to be explicitly declared and accounted for in the revision.
> 2&3: Switch to an array-of-pointers instead of a LIST_ENTRY for rings.
>    Rings are limited to 1 per vCPU for performance so the maximum
>    array size is known (MAXIMUM_PROCESSORS)
> 4: Remove the notifier object, its an abstraction too far. Make receiver
>    own the shared event channel (if used) or the receiver/transmitter own
>    their own event channels
> 5: Update the interface header for VIF v2. Also updates the transmitter
>    code to use the (now-downlevel) VIF v1 structures.
> 6: Add the new functionality from VIF v2. Adds translation layer for VIF v1
>    so that all internal operations are using VIF v2 structures.
> 7: Add multi-queue functionality and distribute packets to queues based on
>    supplied hash values.
> 
> Owen Smith (7):
>   Make interface exposure explicit
>   Move to transmitter ring pointer array
>   Move to receiver ring pointer array
>   Remove notifier object
>   Update to VIF Interface v2
>   Implement VIF Interface v2
>   Implement multiple queues
> 
>  include/vif_interface.h      |   94 +++-
>  src/xenvif/driver.c          |   42 ++
>  src/xenvif/driver.h          |    5 +
>  src/xenvif/frontend.c        |  185 +++++--
>  src/xenvif/frontend.h        |   18 +-
>  src/xenvif/notifier.c        |  684 -----------------------
>  src/xenvif/notifier.h        |   99 ----
>  src/xenvif/pdo.c             |   24 +-
>  src/xenvif/receiver.c        |  595 +++++++++++++++-----
>  src/xenvif/receiver.h        |   18 +-
>  src/xenvif/transmitter.c     | 1238 +++++++++++++++++++++++++++++++---
> --------
>  src/xenvif/transmitter.h     |   26 +-
>  src/xenvif/vif.c             |  146 ++++-
>  src/xenvif/vif.h             |   17 +-
>  vs2012/xenvif/xenvif.vcxproj |    1 -
>  vs2013/xenvif/xenvif.vcxproj |    1 -
>  16 files changed, 1857 insertions(+), 1336 deletions(-)
>  delete mode 100644 src/xenvif/notifier.c
>  delete mode 100644 src/xenvif/notifier.h
> 

Series applied (with some modifications). Thanks!

  Paul

> --
> 1.9.4.msysgit.1
> 
> 
> _______________________________________________
> win-pv-devel mailing list
> win-pv-devel@xxxxxxxxxxxxxxxxxxxx
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

_______________________________________________
win-pv-devel mailing list
win-pv-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.