From 3ebe8fdeb043e8c630cac6dc90d483e729e17017 Mon Sep 17 00:00:00 2001 From: Alexander Duyck Date: Wed, 25 Apr 2012 04:36:38 +0000 Subject: ixgbe: Set Drop_EN bit when multiple Rx queues are present w/o flow control The drop enable bit can be used to improve the performance of the adapter in the case of multiple queues being present. This performance gain is due to the fact that some slower CPUs can cause the FIFO to backfill preventing faster CPUs from receiving additional work. By setting the drop enable bit we prevent this and instead just drop the packets that would have been bound for the slower CPU. Signed-off-by: Alexander Duyck Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher --- drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c') diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c index 7f2fa6992775..5164a21b13ca 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c @@ -395,6 +395,9 @@ static u8 ixgbe_dcbnl_set_all(struct net_device *netdev) } else { hw->mac.ops.fc_enable(hw); } + + ixgbe_set_rx_drop_en(adapter); + ret = DCB_HW_CHG; } @@ -641,6 +644,8 @@ static int ixgbe_dcbnl_ieee_setpfc(struct net_device *dev, else err = hw->mac.ops.fc_enable(hw); + ixgbe_set_rx_drop_en(adapter); + return err; } -- cgit v1.2.3