mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-26 14:14:01 +08:00
mlx4: remove order field from mlx4_en_frag_info
This is really a port attribute, no need to duplicate it per RX queue and per frag. Signed-off-by: Eric Dumazet <edumazet@google.com> Acked-by: Tariq Toukan <tariqt@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
69ba943151
commit
159ddfd2ca
@ -59,7 +59,7 @@ static int mlx4_alloc_pages(struct mlx4_en_priv *priv,
|
|||||||
struct page *page;
|
struct page *page;
|
||||||
dma_addr_t dma;
|
dma_addr_t dma;
|
||||||
|
|
||||||
for (order = frag_info->order; ;) {
|
for (order = priv->rx_page_order; ;) {
|
||||||
gfp_t gfp = _gfp;
|
gfp_t gfp = _gfp;
|
||||||
|
|
||||||
if (order)
|
if (order)
|
||||||
@ -1195,7 +1195,7 @@ void mlx4_en_calc_rx_buf(struct net_device *dev)
|
|||||||
* This only works when num_frags == 1.
|
* This only works when num_frags == 1.
|
||||||
*/
|
*/
|
||||||
if (priv->tx_ring_num[TX_XDP]) {
|
if (priv->tx_ring_num[TX_XDP]) {
|
||||||
priv->frag_info[0].order = 0;
|
priv->rx_page_order = 0;
|
||||||
priv->frag_info[0].frag_size = eff_mtu;
|
priv->frag_info[0].frag_size = eff_mtu;
|
||||||
priv->frag_info[0].frag_prefix_size = 0;
|
priv->frag_info[0].frag_prefix_size = 0;
|
||||||
/* This will gain efficient xdp frame recycling at the
|
/* This will gain efficient xdp frame recycling at the
|
||||||
@ -1209,7 +1209,6 @@ void mlx4_en_calc_rx_buf(struct net_device *dev)
|
|||||||
int buf_size = 0;
|
int buf_size = 0;
|
||||||
|
|
||||||
while (buf_size < eff_mtu) {
|
while (buf_size < eff_mtu) {
|
||||||
priv->frag_info[i].order = MLX4_EN_ALLOC_PREFER_ORDER;
|
|
||||||
priv->frag_info[i].frag_size =
|
priv->frag_info[i].frag_size =
|
||||||
(eff_mtu > buf_size + frag_sizes[i]) ?
|
(eff_mtu > buf_size + frag_sizes[i]) ?
|
||||||
frag_sizes[i] : eff_mtu - buf_size;
|
frag_sizes[i] : eff_mtu - buf_size;
|
||||||
@ -1221,6 +1220,7 @@ void mlx4_en_calc_rx_buf(struct net_device *dev)
|
|||||||
buf_size += priv->frag_info[i].frag_size;
|
buf_size += priv->frag_info[i].frag_size;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
priv->rx_page_order = MLX4_EN_ALLOC_PREFER_ORDER;
|
||||||
priv->dma_dir = PCI_DMA_FROMDEVICE;
|
priv->dma_dir = PCI_DMA_FROMDEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -474,7 +474,6 @@ struct mlx4_en_frag_info {
|
|||||||
u16 frag_size;
|
u16 frag_size;
|
||||||
u16 frag_prefix_size;
|
u16 frag_prefix_size;
|
||||||
u32 frag_stride;
|
u32 frag_stride;
|
||||||
u16 order;
|
|
||||||
u16 rx_headroom;
|
u16 rx_headroom;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -586,6 +585,7 @@ struct mlx4_en_priv {
|
|||||||
u8 num_frags;
|
u8 num_frags;
|
||||||
u8 log_rx_info;
|
u8 log_rx_info;
|
||||||
u8 dma_dir;
|
u8 dma_dir;
|
||||||
|
u8 rx_page_order;
|
||||||
|
|
||||||
struct mlx4_en_tx_ring **tx_ring[MLX4_EN_NUM_TX_TYPES];
|
struct mlx4_en_tx_ring **tx_ring[MLX4_EN_NUM_TX_TYPES];
|
||||||
struct mlx4_en_rx_ring *rx_ring[MAX_RX_RINGS];
|
struct mlx4_en_rx_ring *rx_ring[MAX_RX_RINGS];
|
||||||
|
Loading…
Reference in New Issue
Block a user