diff options
| author | Alexander Duyck <alexander.h.duyck@intel.com> | 2018-07-09 12:19:59 -0400 |
|---|---|---|
| committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2018-07-09 16:41:34 -0400 |
| commit | 4f49dec9075aa0277b8c9c657ec31e6361f88724 (patch) | |
| tree | 939ce61bc940ed3fbc7abaf0d9b6d3c3ce81da0f /drivers | |
| parent | a4ea8a3dacc312c3402c78f6e4843afdda9b43a0 (diff) | |
net: allow ndo_select_queue to pass netdev
This patch makes it so that instead of passing a void pointer as the
accel_priv we instead pass a net_device pointer as sb_dev. Making this
change allows us to pass the subordinate device through to the fallback
function eventually so that we can keep the actual code in the
ndo_select_queue call as focused on possible on the exception cases.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers')
26 files changed, 53 insertions, 34 deletions
diff --git a/drivers/infiniband/hw/hfi1/vnic_main.c b/drivers/infiniband/hw/hfi1/vnic_main.c index 5d65582fe4d9..616fc9b6fad8 100644 --- a/drivers/infiniband/hw/hfi1/vnic_main.c +++ b/drivers/infiniband/hw/hfi1/vnic_main.c | |||
| @@ -423,7 +423,7 @@ tx_finish: | |||
| 423 | 423 | ||
| 424 | static u16 hfi1_vnic_select_queue(struct net_device *netdev, | 424 | static u16 hfi1_vnic_select_queue(struct net_device *netdev, |
| 425 | struct sk_buff *skb, | 425 | struct sk_buff *skb, |
| 426 | void *accel_priv, | 426 | struct net_device *sb_dev, |
| 427 | select_queue_fallback_t fallback) | 427 | select_queue_fallback_t fallback) |
| 428 | { | 428 | { |
| 429 | struct hfi1_vnic_vport_info *vinfo = opa_vnic_dev_priv(netdev); | 429 | struct hfi1_vnic_vport_info *vinfo = opa_vnic_dev_priv(netdev); |
diff --git a/drivers/infiniband/ulp/opa_vnic/opa_vnic_netdev.c b/drivers/infiniband/ulp/opa_vnic/opa_vnic_netdev.c index 0c8aec62a425..61558788b3fa 100644 --- a/drivers/infiniband/ulp/opa_vnic/opa_vnic_netdev.c +++ b/drivers/infiniband/ulp/opa_vnic/opa_vnic_netdev.c | |||
| @@ -95,7 +95,7 @@ static netdev_tx_t opa_netdev_start_xmit(struct sk_buff *skb, | |||
| 95 | } | 95 | } |
| 96 | 96 | ||
| 97 | static u16 opa_vnic_select_queue(struct net_device *netdev, struct sk_buff *skb, | 97 | static u16 opa_vnic_select_queue(struct net_device *netdev, struct sk_buff *skb, |
| 98 | void *accel_priv, | 98 | struct net_device *sb_dev, |
| 99 | select_queue_fallback_t fallback) | 99 | select_queue_fallback_t fallback) |
| 100 | { | 100 | { |
| 101 | struct opa_vnic_adapter *adapter = opa_vnic_priv(netdev); | 101 | struct opa_vnic_adapter *adapter = opa_vnic_priv(netdev); |
| @@ -107,7 +107,7 @@ static u16 opa_vnic_select_queue(struct net_device *netdev, struct sk_buff *skb, | |||
| 107 | mdata->entropy = opa_vnic_calc_entropy(skb); | 107 | mdata->entropy = opa_vnic_calc_entropy(skb); |
| 108 | mdata->vl = opa_vnic_get_vl(adapter, skb); | 108 | mdata->vl = opa_vnic_get_vl(adapter, skb); |
| 109 | rc = adapter->rn_ops->ndo_select_queue(netdev, skb, | 109 | rc = adapter->rn_ops->ndo_select_queue(netdev, skb, |
| 110 | accel_priv, fallback); | 110 | sb_dev, fallback); |
| 111 | skb_pull(skb, sizeof(*mdata)); | 111 | skb_pull(skb, sizeof(*mdata)); |
| 112 | return rc; | 112 | return rc; |
| 113 | } | 113 | } |
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 63e3844c5bec..9a2ea3c1f949 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c | |||
| @@ -4094,7 +4094,8 @@ static inline int bond_slave_override(struct bonding *bond, | |||
| 4094 | 4094 | ||
| 4095 | 4095 | ||
| 4096 | static u16 bond_select_queue(struct net_device *dev, struct sk_buff *skb, | 4096 | static u16 bond_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 4097 | void *accel_priv, select_queue_fallback_t fallback) | 4097 | struct net_device *sb_dev, |
| 4098 | select_queue_fallback_t fallback) | ||
| 4098 | { | 4099 | { |
| 4099 | /* This helper function exists to help dev_pick_tx get the correct | 4100 | /* This helper function exists to help dev_pick_tx get the correct |
| 4100 | * destination queue. Using a helper function skips a call to | 4101 | * destination queue. Using a helper function skips a call to |
diff --git a/drivers/net/ethernet/amazon/ena/ena_netdev.c b/drivers/net/ethernet/amazon/ena/ena_netdev.c index f2af87d70594..e3befb1f9204 100644 --- a/drivers/net/ethernet/amazon/ena/ena_netdev.c +++ b/drivers/net/ethernet/amazon/ena/ena_netdev.c | |||
| @@ -2213,7 +2213,8 @@ static void ena_netpoll(struct net_device *netdev) | |||
| 2213 | #endif /* CONFIG_NET_POLL_CONTROLLER */ | 2213 | #endif /* CONFIG_NET_POLL_CONTROLLER */ |
| 2214 | 2214 | ||
| 2215 | static u16 ena_select_queue(struct net_device *dev, struct sk_buff *skb, | 2215 | static u16 ena_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 2216 | void *accel_priv, select_queue_fallback_t fallback) | 2216 | struct net_device *sb_dev, |
| 2217 | select_queue_fallback_t fallback) | ||
| 2217 | { | 2218 | { |
| 2218 | u16 qid; | 2219 | u16 qid; |
| 2219 | /* we suspect that this is good for in--kernel network services that | 2220 | /* we suspect that this is good for in--kernel network services that |
diff --git a/drivers/net/ethernet/broadcom/bcmsysport.c b/drivers/net/ethernet/broadcom/bcmsysport.c index d5fca2e5a9bc..32f548e6431d 100644 --- a/drivers/net/ethernet/broadcom/bcmsysport.c +++ b/drivers/net/ethernet/broadcom/bcmsysport.c | |||
| @@ -2107,7 +2107,7 @@ static const struct ethtool_ops bcm_sysport_ethtool_ops = { | |||
| 2107 | }; | 2107 | }; |
| 2108 | 2108 | ||
| 2109 | static u16 bcm_sysport_select_queue(struct net_device *dev, struct sk_buff *skb, | 2109 | static u16 bcm_sysport_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 2110 | void *accel_priv, | 2110 | struct net_device *sb_dev, |
| 2111 | select_queue_fallback_t fallback) | 2111 | select_queue_fallback_t fallback) |
| 2112 | { | 2112 | { |
| 2113 | struct bcm_sysport_priv *priv = netdev_priv(dev); | 2113 | struct bcm_sysport_priv *priv = netdev_priv(dev); |
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c index af7b5a4d8ba0..e4e1cf907ac6 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | |||
| @@ -1910,7 +1910,8 @@ void bnx2x_netif_stop(struct bnx2x *bp, int disable_hw) | |||
| 1910 | } | 1910 | } |
| 1911 | 1911 | ||
| 1912 | u16 bnx2x_select_queue(struct net_device *dev, struct sk_buff *skb, | 1912 | u16 bnx2x_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 1913 | void *accel_priv, select_queue_fallback_t fallback) | 1913 | struct net_device *sb_dev, |
| 1914 | select_queue_fallback_t fallback) | ||
| 1914 | { | 1915 | { |
| 1915 | struct bnx2x *bp = netdev_priv(dev); | 1916 | struct bnx2x *bp = netdev_priv(dev); |
| 1916 | 1917 | ||
diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h index a8ce5c55bbb0..0e508e5defce 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h | |||
| @@ -497,7 +497,8 @@ int bnx2x_set_vf_vlan(struct net_device *netdev, int vf, u16 vlan, u8 qos, | |||
| 497 | 497 | ||
| 498 | /* select_queue callback */ | 498 | /* select_queue callback */ |
| 499 | u16 bnx2x_select_queue(struct net_device *dev, struct sk_buff *skb, | 499 | u16 bnx2x_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 500 | void *accel_priv, select_queue_fallback_t fallback); | 500 | struct net_device *sb_dev, |
| 501 | select_queue_fallback_t fallback); | ||
| 501 | 502 | ||
| 502 | static inline void bnx2x_update_rx_prod(struct bnx2x *bp, | 503 | static inline void bnx2x_update_rx_prod(struct bnx2x *bp, |
| 503 | struct bnx2x_fastpath *fp, | 504 | struct bnx2x_fastpath *fp, |
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c index 0d91716a2566..5dc5e5604f05 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | |||
| @@ -930,7 +930,8 @@ freeout: | |||
| 930 | } | 930 | } |
| 931 | 931 | ||
| 932 | static u16 cxgb_select_queue(struct net_device *dev, struct sk_buff *skb, | 932 | static u16 cxgb_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 933 | void *accel_priv, select_queue_fallback_t fallback) | 933 | struct net_device *sb_dev, |
| 934 | select_queue_fallback_t fallback) | ||
| 934 | { | 935 | { |
| 935 | int txq; | 936 | int txq; |
| 936 | 937 | ||
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_enet.c b/drivers/net/ethernet/hisilicon/hns/hns_enet.c index ef9ef703d13a..ff7a74ec8f11 100644 --- a/drivers/net/ethernet/hisilicon/hns/hns_enet.c +++ b/drivers/net/ethernet/hisilicon/hns/hns_enet.c | |||
| @@ -2022,7 +2022,8 @@ static void hns_nic_get_stats64(struct net_device *ndev, | |||
| 2022 | 2022 | ||
| 2023 | static u16 | 2023 | static u16 |
| 2024 | hns_nic_select_queue(struct net_device *ndev, struct sk_buff *skb, | 2024 | hns_nic_select_queue(struct net_device *ndev, struct sk_buff *skb, |
| 2025 | void *accel_priv, select_queue_fallback_t fallback) | 2025 | struct net_device *sb_dev, |
| 2026 | select_queue_fallback_t fallback) | ||
| 2026 | { | 2027 | { |
| 2027 | struct ethhdr *eth_hdr = (struct ethhdr *)skb->data; | 2028 | struct ethhdr *eth_hdr = (struct ethhdr *)skb->data; |
| 2028 | struct hns_nic_priv *priv = netdev_priv(ndev); | 2029 | struct hns_nic_priv *priv = netdev_priv(ndev); |
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c index abb176df2e7f..8c7a68c57afa 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | |||
| @@ -8210,15 +8210,16 @@ static void ixgbe_atr(struct ixgbe_ring *ring, | |||
| 8210 | 8210 | ||
| 8211 | #ifdef IXGBE_FCOE | 8211 | #ifdef IXGBE_FCOE |
| 8212 | static u16 ixgbe_select_queue(struct net_device *dev, struct sk_buff *skb, | 8212 | static u16 ixgbe_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 8213 | void *accel_priv, select_queue_fallback_t fallback) | 8213 | struct net_device *sb_dev, |
| 8214 | select_queue_fallback_t fallback) | ||
| 8214 | { | 8215 | { |
| 8215 | struct ixgbe_adapter *adapter; | 8216 | struct ixgbe_adapter *adapter; |
| 8216 | struct ixgbe_ring_feature *f; | 8217 | struct ixgbe_ring_feature *f; |
| 8217 | int txq; | 8218 | int txq; |
| 8218 | 8219 | ||
| 8219 | if (accel_priv) { | 8220 | if (sb_dev) { |
| 8220 | u8 tc = netdev_get_prio_tc_map(dev, skb->priority); | 8221 | u8 tc = netdev_get_prio_tc_map(dev, skb->priority); |
| 8221 | struct net_device *vdev = accel_priv; | 8222 | struct net_device *vdev = sb_dev; |
| 8222 | 8223 | ||
| 8223 | txq = vdev->tc_to_txq[tc].offset; | 8224 | txq = vdev->tc_to_txq[tc].offset; |
| 8224 | txq += reciprocal_scale(skb_get_hash(skb), | 8225 | txq += reciprocal_scale(skb_get_hash(skb), |
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_tx.c b/drivers/net/ethernet/mellanox/mlx4/en_tx.c index 0227786308af..df2996618cd1 100644 --- a/drivers/net/ethernet/mellanox/mlx4/en_tx.c +++ b/drivers/net/ethernet/mellanox/mlx4/en_tx.c | |||
| @@ -688,7 +688,8 @@ static void build_inline_wqe(struct mlx4_en_tx_desc *tx_desc, | |||
| 688 | } | 688 | } |
| 689 | 689 | ||
| 690 | u16 mlx4_en_select_queue(struct net_device *dev, struct sk_buff *skb, | 690 | u16 mlx4_en_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 691 | void *accel_priv, select_queue_fallback_t fallback) | 691 | struct net_device *sb_dev, |
| 692 | select_queue_fallback_t fallback) | ||
| 692 | { | 693 | { |
| 693 | struct mlx4_en_priv *priv = netdev_priv(dev); | 694 | struct mlx4_en_priv *priv = netdev_priv(dev); |
| 694 | u16 rings_p_up = priv->num_tx_rings_p_up; | 695 | u16 rings_p_up = priv->num_tx_rings_p_up; |
diff --git a/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h b/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h index ace6545f82e6..c3228b89df46 100644 --- a/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h +++ b/drivers/net/ethernet/mellanox/mlx4/mlx4_en.h | |||
| @@ -699,7 +699,8 @@ void mlx4_en_arm_cq(struct mlx4_en_priv *priv, struct mlx4_en_cq *cq); | |||
| 699 | 699 | ||
| 700 | void mlx4_en_tx_irq(struct mlx4_cq *mcq); | 700 | void mlx4_en_tx_irq(struct mlx4_cq *mcq); |
| 701 | u16 mlx4_en_select_queue(struct net_device *dev, struct sk_buff *skb, | 701 | u16 mlx4_en_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 702 | void *accel_priv, select_queue_fallback_t fallback); | 702 | struct net_device *sb_dev, |
| 703 | select_queue_fallback_t fallback); | ||
| 703 | netdev_tx_t mlx4_en_xmit(struct sk_buff *skb, struct net_device *dev); | 704 | netdev_tx_t mlx4_en_xmit(struct sk_buff *skb, struct net_device *dev); |
| 704 | netdev_tx_t mlx4_en_xmit_frame(struct mlx4_en_rx_ring *rx_ring, | 705 | netdev_tx_t mlx4_en_xmit_frame(struct mlx4_en_rx_ring *rx_ring, |
| 705 | struct mlx4_en_rx_alloc *frame, | 706 | struct mlx4_en_rx_alloc *frame, |
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en.h b/drivers/net/ethernet/mellanox/mlx5/core/en.h index e2b7586ed7a0..e1b237ccdf56 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/en.h | |||
| @@ -865,7 +865,8 @@ struct mlx5e_profile { | |||
| 865 | void mlx5e_build_ptys2ethtool_map(void); | 865 | void mlx5e_build_ptys2ethtool_map(void); |
| 866 | 866 | ||
| 867 | u16 mlx5e_select_queue(struct net_device *dev, struct sk_buff *skb, | 867 | u16 mlx5e_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 868 | void *accel_priv, select_queue_fallback_t fallback); | 868 | struct net_device *sb_dev, |
| 869 | select_queue_fallback_t fallback); | ||
| 869 | netdev_tx_t mlx5e_xmit(struct sk_buff *skb, struct net_device *dev); | 870 | netdev_tx_t mlx5e_xmit(struct sk_buff *skb, struct net_device *dev); |
| 870 | netdev_tx_t mlx5e_sq_xmit(struct mlx5e_txqsq *sq, struct sk_buff *skb, | 871 | netdev_tx_t mlx5e_sq_xmit(struct mlx5e_txqsq *sq, struct sk_buff *skb, |
| 871 | struct mlx5e_tx_wqe *wqe, u16 pi); | 872 | struct mlx5e_tx_wqe *wqe, u16 pi); |
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c index f0739dae7b56..dfcc3710b65f 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c | |||
| @@ -111,7 +111,8 @@ static inline int mlx5e_get_dscp_up(struct mlx5e_priv *priv, struct sk_buff *skb | |||
| 111 | #endif | 111 | #endif |
| 112 | 112 | ||
| 113 | u16 mlx5e_select_queue(struct net_device *dev, struct sk_buff *skb, | 113 | u16 mlx5e_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 114 | void *accel_priv, select_queue_fallback_t fallback) | 114 | struct net_device *sb_dev, |
| 115 | select_queue_fallback_t fallback) | ||
| 115 | { | 116 | { |
| 116 | struct mlx5e_priv *priv = netdev_priv(dev); | 117 | struct mlx5e_priv *priv = netdev_priv(dev); |
| 117 | int channel_ix = fallback(dev, skb); | 118 | int channel_ix = fallback(dev, skb); |
diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c index 68f122140966..4a7f54c8e7aa 100644 --- a/drivers/net/ethernet/renesas/ravb_main.c +++ b/drivers/net/ethernet/renesas/ravb_main.c | |||
| @@ -1656,7 +1656,8 @@ drop: | |||
| 1656 | } | 1656 | } |
| 1657 | 1657 | ||
| 1658 | static u16 ravb_select_queue(struct net_device *ndev, struct sk_buff *skb, | 1658 | static u16 ravb_select_queue(struct net_device *ndev, struct sk_buff *skb, |
| 1659 | void *accel_priv, select_queue_fallback_t fallback) | 1659 | struct net_device *sb_dev, |
| 1660 | select_queue_fallback_t fallback) | ||
| 1660 | { | 1661 | { |
| 1661 | /* If skb needs TX timestamp, it is handled in network control queue */ | 1662 | /* If skb needs TX timestamp, it is handled in network control queue */ |
| 1662 | return (skb_shinfo(skb)->tx_flags & SKBTX_HW_TSTAMP) ? RAVB_NC : | 1663 | return (skb_shinfo(skb)->tx_flags & SKBTX_HW_TSTAMP) ? RAVB_NC : |
diff --git a/drivers/net/ethernet/sun/ldmvsw.c b/drivers/net/ethernet/sun/ldmvsw.c index a5dd627fe2f9..d42f47f6c632 100644 --- a/drivers/net/ethernet/sun/ldmvsw.c +++ b/drivers/net/ethernet/sun/ldmvsw.c | |||
| @@ -101,7 +101,8 @@ static struct vnet_port *vsw_tx_port_find(struct sk_buff *skb, | |||
| 101 | } | 101 | } |
| 102 | 102 | ||
| 103 | static u16 vsw_select_queue(struct net_device *dev, struct sk_buff *skb, | 103 | static u16 vsw_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 104 | void *accel_priv, select_queue_fallback_t fallback) | 104 | struct net_device *sb_dev, |
| 105 | select_queue_fallback_t fallback) | ||
| 105 | { | 106 | { |
| 106 | struct vnet_port *port = netdev_priv(dev); | 107 | struct vnet_port *port = netdev_priv(dev); |
| 107 | 108 | ||
diff --git a/drivers/net/ethernet/sun/sunvnet.c b/drivers/net/ethernet/sun/sunvnet.c index a94f50442613..12539b357a78 100644 --- a/drivers/net/ethernet/sun/sunvnet.c +++ b/drivers/net/ethernet/sun/sunvnet.c | |||
| @@ -234,7 +234,8 @@ static struct vnet_port *vnet_tx_port_find(struct sk_buff *skb, | |||
| 234 | } | 234 | } |
| 235 | 235 | ||
| 236 | static u16 vnet_select_queue(struct net_device *dev, struct sk_buff *skb, | 236 | static u16 vnet_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 237 | void *accel_priv, select_queue_fallback_t fallback) | 237 | struct net_device *sb_dev, |
| 238 | select_queue_fallback_t fallback) | ||
| 238 | { | 239 | { |
| 239 | struct vnet *vp = netdev_priv(dev); | 240 | struct vnet *vp = netdev_priv(dev); |
| 240 | struct vnet_port *port = __tx_port_find(vp, skb); | 241 | struct vnet_port *port = __tx_port_find(vp, skb); |
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c index dd1d6e115145..98c0107d6ca1 100644 --- a/drivers/net/hyperv/netvsc_drv.c +++ b/drivers/net/hyperv/netvsc_drv.c | |||
| @@ -329,7 +329,7 @@ static u16 netvsc_pick_tx(struct net_device *ndev, struct sk_buff *skb) | |||
| 329 | } | 329 | } |
| 330 | 330 | ||
| 331 | static u16 netvsc_select_queue(struct net_device *ndev, struct sk_buff *skb, | 331 | static u16 netvsc_select_queue(struct net_device *ndev, struct sk_buff *skb, |
| 332 | void *accel_priv, | 332 | struct net_device *sb_dev, |
| 333 | select_queue_fallback_t fallback) | 333 | select_queue_fallback_t fallback) |
| 334 | { | 334 | { |
| 335 | struct net_device_context *ndc = netdev_priv(ndev); | 335 | struct net_device_context *ndc = netdev_priv(ndev); |
| @@ -343,7 +343,7 @@ static u16 netvsc_select_queue(struct net_device *ndev, struct sk_buff *skb, | |||
| 343 | 343 | ||
| 344 | if (vf_ops->ndo_select_queue) | 344 | if (vf_ops->ndo_select_queue) |
| 345 | txq = vf_ops->ndo_select_queue(vf_netdev, skb, | 345 | txq = vf_ops->ndo_select_queue(vf_netdev, skb, |
| 346 | accel_priv, fallback); | 346 | sb_dev, fallback); |
| 347 | else | 347 | else |
| 348 | txq = fallback(vf_netdev, skb); | 348 | txq = fallback(vf_netdev, skb); |
| 349 | 349 | ||
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c index 4f390fa557e4..78b549698b7b 100644 --- a/drivers/net/net_failover.c +++ b/drivers/net/net_failover.c | |||
| @@ -115,7 +115,8 @@ static netdev_tx_t net_failover_start_xmit(struct sk_buff *skb, | |||
| 115 | } | 115 | } |
| 116 | 116 | ||
| 117 | static u16 net_failover_select_queue(struct net_device *dev, | 117 | static u16 net_failover_select_queue(struct net_device *dev, |
| 118 | struct sk_buff *skb, void *accel_priv, | 118 | struct sk_buff *skb, |
| 119 | struct net_device *sb_dev, | ||
| 119 | select_queue_fallback_t fallback) | 120 | select_queue_fallback_t fallback) |
| 120 | { | 121 | { |
| 121 | struct net_failover_info *nfo_info = netdev_priv(dev); | 122 | struct net_failover_info *nfo_info = netdev_priv(dev); |
| @@ -128,7 +129,7 @@ static u16 net_failover_select_queue(struct net_device *dev, | |||
| 128 | 129 | ||
| 129 | if (ops->ndo_select_queue) | 130 | if (ops->ndo_select_queue) |
| 130 | txq = ops->ndo_select_queue(primary_dev, skb, | 131 | txq = ops->ndo_select_queue(primary_dev, skb, |
| 131 | accel_priv, fallback); | 132 | sb_dev, fallback); |
| 132 | else | 133 | else |
| 133 | txq = fallback(primary_dev, skb); | 134 | txq = fallback(primary_dev, skb); |
| 134 | 135 | ||
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c index b070959737ff..3a95eaae0c98 100644 --- a/drivers/net/team/team.c +++ b/drivers/net/team/team.c | |||
| @@ -1707,7 +1707,8 @@ static netdev_tx_t team_xmit(struct sk_buff *skb, struct net_device *dev) | |||
| 1707 | } | 1707 | } |
| 1708 | 1708 | ||
| 1709 | static u16 team_select_queue(struct net_device *dev, struct sk_buff *skb, | 1709 | static u16 team_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 1710 | void *accel_priv, select_queue_fallback_t fallback) | 1710 | struct net_device *sb_dev, |
| 1711 | select_queue_fallback_t fallback) | ||
| 1711 | { | 1712 | { |
| 1712 | /* | 1713 | /* |
| 1713 | * This helper function exists to help dev_pick_tx get the correct | 1714 | * This helper function exists to help dev_pick_tx get the correct |
diff --git a/drivers/net/tun.c b/drivers/net/tun.c index a192a017cc68..76f0f4131197 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c | |||
| @@ -607,7 +607,8 @@ static u16 tun_ebpf_select_queue(struct tun_struct *tun, struct sk_buff *skb) | |||
| 607 | } | 607 | } |
| 608 | 608 | ||
| 609 | static u16 tun_select_queue(struct net_device *dev, struct sk_buff *skb, | 609 | static u16 tun_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 610 | void *accel_priv, select_queue_fallback_t fallback) | 610 | struct net_device *sb_dev, |
| 611 | select_queue_fallback_t fallback) | ||
| 611 | { | 612 | { |
| 612 | struct tun_struct *tun = netdev_priv(dev); | 613 | struct tun_struct *tun = netdev_priv(dev); |
| 613 | u16 ret; | 614 | u16 ret; |
diff --git a/drivers/net/wireless/marvell/mwifiex/main.c b/drivers/net/wireless/marvell/mwifiex/main.c index 510f6b8e717d..fa3e8ddfe9a9 100644 --- a/drivers/net/wireless/marvell/mwifiex/main.c +++ b/drivers/net/wireless/marvell/mwifiex/main.c | |||
| @@ -1279,7 +1279,8 @@ static struct net_device_stats *mwifiex_get_stats(struct net_device *dev) | |||
| 1279 | 1279 | ||
| 1280 | static u16 | 1280 | static u16 |
| 1281 | mwifiex_netdev_select_wmm_queue(struct net_device *dev, struct sk_buff *skb, | 1281 | mwifiex_netdev_select_wmm_queue(struct net_device *dev, struct sk_buff *skb, |
| 1282 | void *accel_priv, select_queue_fallback_t fallback) | 1282 | struct net_device *sb_dev, |
| 1283 | select_queue_fallback_t fallback) | ||
| 1283 | { | 1284 | { |
| 1284 | skb->priority = cfg80211_classify8021d(skb, NULL); | 1285 | skb->priority = cfg80211_classify8021d(skb, NULL); |
| 1285 | return mwifiex_1d_to_wmm_queue[skb->priority]; | 1286 | return mwifiex_1d_to_wmm_queue[skb->priority]; |
diff --git a/drivers/net/xen-netback/interface.c b/drivers/net/xen-netback/interface.c index 78ebe494fef0..19c4c585f472 100644 --- a/drivers/net/xen-netback/interface.c +++ b/drivers/net/xen-netback/interface.c | |||
| @@ -148,7 +148,7 @@ void xenvif_wake_queue(struct xenvif_queue *queue) | |||
| 148 | } | 148 | } |
| 149 | 149 | ||
| 150 | static u16 xenvif_select_queue(struct net_device *dev, struct sk_buff *skb, | 150 | static u16 xenvif_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 151 | void *accel_priv, | 151 | struct net_device *sb_dev, |
| 152 | select_queue_fallback_t fallback) | 152 | select_queue_fallback_t fallback) |
| 153 | { | 153 | { |
| 154 | struct xenvif *vif = netdev_priv(dev); | 154 | struct xenvif *vif = netdev_priv(dev); |
diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c index a57daecf1d57..d67cd379d156 100644 --- a/drivers/net/xen-netfront.c +++ b/drivers/net/xen-netfront.c | |||
| @@ -545,7 +545,8 @@ static int xennet_count_skb_slots(struct sk_buff *skb) | |||
| 545 | } | 545 | } |
| 546 | 546 | ||
| 547 | static u16 xennet_select_queue(struct net_device *dev, struct sk_buff *skb, | 547 | static u16 xennet_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 548 | void *accel_priv, select_queue_fallback_t fallback) | 548 | struct net_device *sb_dev, |
| 549 | select_queue_fallback_t fallback) | ||
| 549 | { | 550 | { |
| 550 | unsigned int num_queues = dev->real_num_tx_queues; | 551 | unsigned int num_queues = dev->real_num_tx_queues; |
| 551 | u32 hash; | 552 | u32 hash; |
diff --git a/drivers/staging/rtl8188eu/os_dep/os_intfs.c b/drivers/staging/rtl8188eu/os_dep/os_intfs.c index add1ba00f3e9..38e85c8a85c8 100644 --- a/drivers/staging/rtl8188eu/os_dep/os_intfs.c +++ b/drivers/staging/rtl8188eu/os_dep/os_intfs.c | |||
| @@ -253,7 +253,8 @@ static unsigned int rtw_classify8021d(struct sk_buff *skb) | |||
| 253 | } | 253 | } |
| 254 | 254 | ||
| 255 | static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, | 255 | static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 256 | void *accel_priv, select_queue_fallback_t fallback) | 256 | struct net_device *sb_dev, |
| 257 | select_queue_fallback_t fallback) | ||
| 257 | { | 258 | { |
| 258 | struct adapter *padapter = rtw_netdev_priv(dev); | 259 | struct adapter *padapter = rtw_netdev_priv(dev); |
| 259 | struct mlme_priv *pmlmepriv = &padapter->mlmepriv; | 260 | struct mlme_priv *pmlmepriv = &padapter->mlmepriv; |
diff --git a/drivers/staging/rtl8723bs/os_dep/os_intfs.c b/drivers/staging/rtl8723bs/os_dep/os_intfs.c index ace68f023b49..181642358e3f 100644 --- a/drivers/staging/rtl8723bs/os_dep/os_intfs.c +++ b/drivers/staging/rtl8723bs/os_dep/os_intfs.c | |||
| @@ -403,10 +403,9 @@ static unsigned int rtw_classify8021d(struct sk_buff *skb) | |||
| 403 | } | 403 | } |
| 404 | 404 | ||
| 405 | 405 | ||
| 406 | static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb | 406 | static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb, |
| 407 | , void *accel_priv | 407 | struct net_device *sb_dev, |
| 408 | , select_queue_fallback_t fallback | 408 | select_queue_fallback_t fallback) |
| 409 | ) | ||
| 410 | { | 409 | { |
| 411 | struct adapter *padapter = rtw_netdev_priv(dev); | 410 | struct adapter *padapter = rtw_netdev_priv(dev); |
| 412 | struct mlme_priv *pmlmepriv = &padapter->mlmepriv; | 411 | struct mlme_priv *pmlmepriv = &padapter->mlmepriv; |
