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

[win-pv-devel] [PATCH 00/10] Add multi-queue support



This patch series implements multi-queue support.
A queue will be created per vCPU, and up to min(vCPUs, 
"multi-queue-max-queues") queues
will be used by default. If "multi-queue-max-queues" is not present, only 1 
queue is used
which has the same behaviour as the previous protocol.
Note: without patches to xennet, the packet steering algorithm will deliver all 
packets to 
  queue 0

1: Add a new transmitter packet to the vif interface header and use this 
structure
   internally.
2: Bump the vif interface version to 2, add new calls and macros to access the 
extended
    interface methods.
3-9: Implement multi-queue behaviour, steering packets based on a supplied hash 
value
10: Reduce event channel usage by not creating event channels that would be 
unused

Owen Smith (10):
  Rework transmitter packet code to use an internal cache of objects
  Add VIF interface version 2
  Store maximum number of queues allowed
  Create a transmitter/receiver ring per max-queue
  Split notifier into a list of queues.
  Dont call through to inactive queues
  Write queue values under <frontend>/queue-<id> and "multi-queue-num-queues"
  Steer transmitter packets to queues
  Pin queue's DPC to appropriate vCPU when using multiple queues
  Only call EVTCHN:Open for rx and tx or single event channel, based on 
       "feature-split-event-channels"

 include/vif_interface.h  | 123 ++++++--
 src/xenvif/driver.c      |  36 +++
 src/xenvif/driver.h      |   5 +
 src/xenvif/frontend.c    |  91 +++++-
 src/xenvif/frontend.h    |  13 +
 src/xenvif/notifier.c    | 722 +++++++++++++++++++++++++++++++++-------------
 src/xenvif/notifier.h    |  12 +-
 src/xenvif/receiver.c    |  42 ++-
 src/xenvif/receiver.h    |   4 +-
 src/xenvif/transmitter.c | 724 ++++++++++++++++++++++++++++++++++++-----------
 src/xenvif/transmitter.h |  27 +-
 src/xenvif/vif.c         | 157 +++++++++-
 src/xenvif/vif.h         |  15 +-
 13 files changed, 1555 insertions(+), 416 deletions(-)

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


 


Rackspace

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