i40e: Fix channel addition in reset flow
Fix recreating the channel VSIs during the reset flow to reconfigure the Tx rings and the queue context associated with the channel VSI. Also update the next_base_queue for the VSI while rebuilding the channel VSIs after a reset. Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
e0346f9fcb
commit
bbf0bdd41f
@ -9007,6 +9007,17 @@ static int i40e_rebuild_channels(struct i40e_vsi *vsi)
|
||||
vsi->uplink_seid);
|
||||
return ret;
|
||||
}
|
||||
/* Reconfigure TX queues using QTX_CTL register */
|
||||
ret = i40e_channel_config_tx_ring(vsi->back, vsi, ch);
|
||||
if (ret) {
|
||||
dev_info(&vsi->back->pdev->dev,
|
||||
"failed to configure TX rings for channel %u\n",
|
||||
ch->seid);
|
||||
return ret;
|
||||
}
|
||||
/* update 'next_base_queue' */
|
||||
vsi->next_base_queue = vsi->next_base_queue +
|
||||
ch->num_queue_pairs;
|
||||
if (ch->max_tx_rate) {
|
||||
u64 credits = ch->max_tx_rate;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user