• Neil Horman's avatar
    vmxnet3: fix ethtool ring buffer size setting · 48412a7e
    Neil Horman authored
    Noticed that vmxnet3's get_ringparam function was returning the summation of all
    ring buffers on a NIC, rather than just the size of any one ring.  This causes
    problems when a vmxnet3 instance has multiple queues, as ethtool, when setting
    ring parameters, first gets the current ring parameters to set the existing
    values in the set_ringparm commannd.  The result is, that unless both rx and tx
    ring sizes are set in a single operation, which ever ring is not set will
    silently have its ring count multiplied by the number of queues on the NIC until
    it reaches a driver defined maxiumum value.
    
    Fix it by not multiplying the rx and tx ring sizes by the number of queues in
    the system, like every other driver.  Tested by myself successfully.
    Signed-off-by: default avatarNeil Horman <nhorman@tuxdriver.com>
    CC: Shreyas Bhatewara <sbhatewara@vmware.com>
    CC: "VMware, Inc." <pv-drivers@vmware.com>
    CC: "David S. Miller" <davem@davemloft.net>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    48412a7e
vmxnet3_ethtool.c 18.4 KB