On 19. 03. 24 11:17, Paolo Abeni wrote:
On Mon, 2024-03-18 at 15:30 +0100, Ivan Vecera wrote:
In the driver code there are 3 types of checks whether given
VSI is main or not:
1. vsi->type ==/!= I40E_VSI_MAIN
2. vsi ==/!= pf->vsi[pf->lan_vsi]
3. vsi->seid ==/!= pf->vsi[pf->lan_vsi]->seid

All of them are equivalent and can be consolidated. Convert cases
2 and 3 to case 1.

Minor nit: while at it, what about introducing an helper for such
check?
Reordering the patches you could use it also in i40e_pf_get_main_vsi()

No, I couldn't, that helper does not check vsi->type value:

/**
 * i40e_pf_get_main_vsi - get pointer to main VSI
 * @pf: pointer to a PF
 *
 * Return pointer to main VSI or NULL if it does not exist
 **/
static inline struct i40e_vsi *i40e_pf_get_main_vsi(struct i40e_pf *pf)
{
        return (pf->lan_vsi != I40E_NO_VSI) ? pf->vsi[pf->lan_vsi] : NULL;
}

I had an idea with helper like:
static inline bool i40e_is_main_vsi(struct i40e_vsi *vsi)
{
        struct i40e_pf *pf = vsi->back;
        return (pf->vsi[pf->lan_vsi] == vsi);
}

but I think that `vsi->type == I40E_VSI_MAIN` is simple enough.

Thanks,
Ivan

Reply via email to