diff options
Diffstat (limited to 'drivers/net/ethernet/intel/iavf/iavf_virtchnl.c')
| -rw-r--r-- | drivers/net/ethernet/intel/iavf/iavf_virtchnl.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c b/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c index 15ee85dc33bd..5a9e6563923e 100644 --- a/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c +++ b/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c @@ -269,11 +269,14 @@ int iavf_get_vf_vlan_v2_caps(struct iavf_adapter *adapter)  void iavf_configure_queues(struct iavf_adapter *adapter)  {  	struct virtchnl_vsi_queue_config_info *vqci; -	struct virtchnl_queue_pair_info *vqpi; +	int i, max_frame = adapter->vf_res->max_mtu;  	int pairs = adapter->num_active_queues; -	int i, max_frame = IAVF_MAX_RXBUFFER; +	struct virtchnl_queue_pair_info *vqpi;  	size_t len; +	if (max_frame > IAVF_MAX_RXBUFFER || !max_frame) +		max_frame = IAVF_MAX_RXBUFFER; +  	if (adapter->current_op != VIRTCHNL_OP_UNKNOWN) {  		/* bail because we already have a command pending */  		dev_err(&adapter->pdev->dev, "Cannot configure queues, command %d pending\n", | 
