mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-29 23:53:32 +00:00
i40e: Don't notify client of VF reset during VF creation
VF goes through reset path during VF creation which happens to also have notification of VF reset to client. Adding conditional check to avoid wrongly notifying VF reset during VF creation. Also changing the call order of VF enable, calling it after VF creation rather than before. Change-ID: I96eabd99deae746a2f0fc465194c886f196178ce Signed-off-by: Avinash Dayanand <avinash.dayanand@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
70df973b5e
commit
6a23449a23
1 changed files with 5 additions and 2 deletions
|
@ -991,7 +991,9 @@ void i40e_reset_vf(struct i40e_vf *vf, bool flr)
|
|||
i40e_enable_vf_mappings(vf);
|
||||
set_bit(I40E_VF_STAT_ACTIVE, &vf->vf_states);
|
||||
clear_bit(I40E_VF_STAT_DISABLED, &vf->vf_states);
|
||||
i40e_notify_client_of_vf_reset(pf, abs_vf_id);
|
||||
/* Do not notify the client during VF init */
|
||||
if (vf->pf->num_alloc_vfs)
|
||||
i40e_notify_client_of_vf_reset(pf, abs_vf_id);
|
||||
vf->num_vlan = 0;
|
||||
}
|
||||
/* tell the VF the reset is done */
|
||||
|
@ -1090,7 +1092,6 @@ int i40e_alloc_vfs(struct i40e_pf *pf, u16 num_alloc_vfs)
|
|||
goto err_iov;
|
||||
}
|
||||
}
|
||||
i40e_notify_client_of_vf_enable(pf, num_alloc_vfs);
|
||||
/* allocate memory */
|
||||
vfs = kcalloc(num_alloc_vfs, sizeof(struct i40e_vf), GFP_KERNEL);
|
||||
if (!vfs) {
|
||||
|
@ -1114,6 +1115,8 @@ int i40e_alloc_vfs(struct i40e_pf *pf, u16 num_alloc_vfs)
|
|||
}
|
||||
pf->num_alloc_vfs = num_alloc_vfs;
|
||||
|
||||
i40e_notify_client_of_vf_enable(pf, num_alloc_vfs);
|
||||
|
||||
err_alloc:
|
||||
if (ret)
|
||||
i40e_free_vfs(pf);
|
||||
|
|
Loading…
Reference in a new issue