diff options
Diffstat (limited to 'drivers/net/ethernet/intel/ice/ice.h')
| -rw-r--r-- | drivers/net/ethernet/intel/ice/ice.h | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/ethernet/intel/ice/ice.h b/drivers/net/ethernet/intel/ice/ice.h index f972dce8aebb..cb10abb14e11 100644 --- a/drivers/net/ethernet/intel/ice/ice.h +++ b/drivers/net/ethernet/intel/ice/ice.h @@ -174,6 +174,8 @@ struct ice_sw {  	struct ice_pf *pf;  	u16 sw_id;		/* switch ID for this switch */  	u16 bridge_mode;	/* VEB/VEPA/Port Virtualizer */ +	struct ice_vsi *dflt_vsi;	/* default VSI for this switch */ +	u8 dflt_vsi_ena:1;	/* true if above dflt_vsi is enabled */  };  enum ice_state { @@ -275,6 +277,7 @@ struct ice_vsi {  	u8 current_isup:1;		 /* Sync 'link up' logging */  	u8 stat_offsets_loaded:1;  	u8 vlan_ena:1; +	u16 num_vlan;  	/* queue information */  	u8 tx_mapping_mode;		 /* ICE_MAP_MODE_[CONTIG|SCATTER] */ @@ -462,12 +465,13 @@ static inline void ice_set_ring_xdp(struct ice_ring *ring)  static inline struct xdp_umem *ice_xsk_umem(struct ice_ring *ring)  {  	struct xdp_umem **umems = ring->vsi->xsk_umems; -	int qid = ring->q_index; +	u16 qid = ring->q_index;  	if (ice_ring_is_xdp(ring))  		qid -= ring->vsi->num_xdp_txq; -	if (!umems || !umems[qid] || !ice_is_xdp_ena_vsi(ring->vsi)) +	if (qid >= ring->vsi->num_xsk_umems || !umems || !umems[qid] || +	    !ice_is_xdp_ena_vsi(ring->vsi))  		return NULL;  	return umems[qid];  |