• KY Srinivasan's avatar
    hv_netvsc: Properly size the vrss queues · e01ec219
    KY Srinivasan authored
    The current algorithm for deciding on the number of VRSS channels is
    not optimal since we open up the min of number of CPUs online and the
    number of VRSS channels the host is offering. So on a 32 VCPU guest
    we could potentially open 32 VRSS subchannels. Experimentation has
    shown that it is best to limit the number of VRSS channels to the number
    of CPUs within a NUMA node.
    
    Here is the new algorithm for deciding on the number of sub-channels we
    would open up:
            1) Pick the minimum of what the host is offering and what the driver
               in the guest is specifying as the default value.
            2) Pick the minimum of (1) and the numbers of CPUs in the NUMA
               node the primary channel is bound to.
    Signed-off-by: default avatarK. Y. Srinivasan <kys@microsoft.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    e01ec219
netvsc_drv.c 27.2 KB