Merge branch '1GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue
Tony Nguyen says: ==================== 1GbE Intel Wired LAN Driver Updates 2022-02-07 Corinna Vinschen says: Fix the kernel warning "Missing unregister, handled but fix driver" when running, e.g., $ ethtool -G eth0 rx 1024 on igc. Remove memset hack from igb and align igb code to igc. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
4d8cb5ffe3
@ -965,10 +965,6 @@ static int igb_set_ringparam(struct net_device *netdev,
|
||||
memcpy(&temp_ring[i], adapter->rx_ring[i],
|
||||
sizeof(struct igb_ring));
|
||||
|
||||
/* Clear copied XDP RX-queue info */
|
||||
memset(&temp_ring[i].xdp_rxq, 0,
|
||||
sizeof(temp_ring[i].xdp_rxq));
|
||||
|
||||
temp_ring[i].count = new_rx_count;
|
||||
err = igb_setup_rx_resources(&temp_ring[i]);
|
||||
if (err) {
|
||||
|
@ -4345,7 +4345,18 @@ int igb_setup_rx_resources(struct igb_ring *rx_ring)
|
||||
{
|
||||
struct igb_adapter *adapter = netdev_priv(rx_ring->netdev);
|
||||
struct device *dev = rx_ring->dev;
|
||||
int size;
|
||||
int size, res;
|
||||
|
||||
/* XDP RX-queue info */
|
||||
if (xdp_rxq_info_is_reg(&rx_ring->xdp_rxq))
|
||||
xdp_rxq_info_unreg(&rx_ring->xdp_rxq);
|
||||
res = xdp_rxq_info_reg(&rx_ring->xdp_rxq, rx_ring->netdev,
|
||||
rx_ring->queue_index, 0);
|
||||
if (res < 0) {
|
||||
dev_err(dev, "Failed to register xdp_rxq index %u\n",
|
||||
rx_ring->queue_index);
|
||||
return res;
|
||||
}
|
||||
|
||||
size = sizeof(struct igb_rx_buffer) * rx_ring->count;
|
||||
|
||||
@ -4368,14 +4379,10 @@ int igb_setup_rx_resources(struct igb_ring *rx_ring)
|
||||
|
||||
rx_ring->xdp_prog = adapter->xdp_prog;
|
||||
|
||||
/* XDP RX-queue info */
|
||||
if (xdp_rxq_info_reg(&rx_ring->xdp_rxq, rx_ring->netdev,
|
||||
rx_ring->queue_index, 0) < 0)
|
||||
goto err;
|
||||
|
||||
return 0;
|
||||
|
||||
err:
|
||||
xdp_rxq_info_unreg(&rx_ring->xdp_rxq);
|
||||
vfree(rx_ring->rx_buffer_info);
|
||||
rx_ring->rx_buffer_info = NULL;
|
||||
dev_err(dev, "Unable to allocate memory for the Rx descriptor ring\n");
|
||||
|
@ -505,6 +505,9 @@ int igc_setup_rx_resources(struct igc_ring *rx_ring)
|
||||
u8 index = rx_ring->queue_index;
|
||||
int size, desc_len, res;
|
||||
|
||||
/* XDP RX-queue info */
|
||||
if (xdp_rxq_info_is_reg(&rx_ring->xdp_rxq))
|
||||
xdp_rxq_info_unreg(&rx_ring->xdp_rxq);
|
||||
res = xdp_rxq_info_reg(&rx_ring->xdp_rxq, ndev, index,
|
||||
rx_ring->q_vector->napi.napi_id);
|
||||
if (res < 0) {
|
||||
|
Loading…
Reference in New Issue
Block a user