• Nick Child's avatar
    ibmveth: Ethtool set queue support · 10c2aba8
    Nick Child authored
    Implement channel management functions to allow dynamic addition and
    removal of transmit queues. The `ethtool --show-channels` and
    `ethtool --set-channels` commands can be used to get and set the
    number of queues, respectively. Allow the ability to add as many
    transmit queues as available processors but never allow more than the
    hard maximum of 16. The number of receive queues is one and cannot be
    modified.
    
    Depending on whether the requested number of queues is larger or
    smaller than the current value, either allocate or free long term
    buffers. Since long term buffer construction and destruction can
    occur in two different areas, from either channel set requests or
    device open/close, define functions for performing this work. If
    allocation of a new buffer fails, then attempt to revert back to the
    previous number of queues.
    Signed-off-by: default avatarNick Child <nnac123@linux.ibm.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    10c2aba8
ibmveth.c 53.1 KB