mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-01 01:14:19 -04:00
Merge branch 'intel-wired-lan-driver-updates-2024-05-23-ice-idpf'
Jacob Keller says: ==================== Intel Wired LAN Driver Updates 2024-05-23 (ice, idpf) This series contains two fixes which finished up testing. First, Alexander fixes an issue in idpf caused by enabling NAPI and interrupts prior to actually allocating the Rx buffers. Second, Jacob fixes the ice driver VSI VLAN counting logic to ensure that addition and deletion of VLANs properly manages the total VSI count. ==================== Link: https://lore.kernel.org/r/20240523-net-2024-05-23-intel-net-fixes-v1-0-17a923e0bb5f@intel.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -45,14 +45,15 @@ int ice_vsi_add_vlan(struct ice_vsi *vsi, struct ice_vlan *vlan)
|
||||
return -EINVAL;
|
||||
|
||||
err = ice_fltr_add_vlan(vsi, vlan);
|
||||
if (err && err != -EEXIST) {
|
||||
if (!err)
|
||||
vsi->num_vlan++;
|
||||
else if (err == -EEXIST)
|
||||
err = 0;
|
||||
else
|
||||
dev_err(ice_pf_to_dev(vsi->back), "Failure Adding VLAN %d on VSI %i, status %d\n",
|
||||
vlan->vid, vsi->vsi_num, err);
|
||||
return err;
|
||||
}
|
||||
|
||||
vsi->num_vlan++;
|
||||
return 0;
|
||||
return err;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1394,6 +1394,7 @@ static int idpf_vport_open(struct idpf_vport *vport, bool alloc_res)
|
||||
}
|
||||
|
||||
idpf_rx_init_buf_tail(vport);
|
||||
idpf_vport_intr_ena(vport);
|
||||
|
||||
err = idpf_send_config_queues_msg(vport);
|
||||
if (err) {
|
||||
|
||||
@@ -3746,9 +3746,9 @@ static void idpf_vport_intr_ena_irq_all(struct idpf_vport *vport)
|
||||
*/
|
||||
void idpf_vport_intr_deinit(struct idpf_vport *vport)
|
||||
{
|
||||
idpf_vport_intr_dis_irq_all(vport);
|
||||
idpf_vport_intr_napi_dis_all(vport);
|
||||
idpf_vport_intr_napi_del_all(vport);
|
||||
idpf_vport_intr_dis_irq_all(vport);
|
||||
idpf_vport_intr_rel_irq(vport);
|
||||
}
|
||||
|
||||
@@ -4179,7 +4179,6 @@ int idpf_vport_intr_init(struct idpf_vport *vport)
|
||||
|
||||
idpf_vport_intr_map_vector_to_qs(vport);
|
||||
idpf_vport_intr_napi_add_all(vport);
|
||||
idpf_vport_intr_napi_ena_all(vport);
|
||||
|
||||
err = vport->adapter->dev_ops.reg_ops.intr_reg_init(vport);
|
||||
if (err)
|
||||
@@ -4193,17 +4192,20 @@ int idpf_vport_intr_init(struct idpf_vport *vport)
|
||||
if (err)
|
||||
goto unroll_vectors_alloc;
|
||||
|
||||
idpf_vport_intr_ena_irq_all(vport);
|
||||
|
||||
return 0;
|
||||
|
||||
unroll_vectors_alloc:
|
||||
idpf_vport_intr_napi_dis_all(vport);
|
||||
idpf_vport_intr_napi_del_all(vport);
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
void idpf_vport_intr_ena(struct idpf_vport *vport)
|
||||
{
|
||||
idpf_vport_intr_napi_ena_all(vport);
|
||||
idpf_vport_intr_ena_irq_all(vport);
|
||||
}
|
||||
|
||||
/**
|
||||
* idpf_config_rss - Send virtchnl messages to configure RSS
|
||||
* @vport: virtual port
|
||||
|
||||
@@ -990,6 +990,7 @@ int idpf_vport_intr_alloc(struct idpf_vport *vport);
|
||||
void idpf_vport_intr_update_itr_ena_irq(struct idpf_q_vector *q_vector);
|
||||
void idpf_vport_intr_deinit(struct idpf_vport *vport);
|
||||
int idpf_vport_intr_init(struct idpf_vport *vport);
|
||||
void idpf_vport_intr_ena(struct idpf_vport *vport);
|
||||
enum pkt_hash_types idpf_ptype_to_htype(const struct idpf_rx_ptype_decoded *decoded);
|
||||
int idpf_config_rss(struct idpf_vport *vport);
|
||||
int idpf_init_rss(struct idpf_vport *vport);
|
||||
|
||||
Reference in New Issue
Block a user