OSDN Git Service

i40e: don't check params until after checking for client instance
authorJacob Keller <jacob.e.keller@intel.com>
Fri, 10 Feb 2017 07:29:13 +0000 (23:29 -0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sun, 12 Feb 2017 04:39:00 +0000 (20:39 -0800)
We can avoid the minor bit of work by calling check params after we
check for the client instance, since we're about to return early in
cases where we do not have a client.

Change-ID: I56f8ea2ba48d4f571fa331c9ace50819a022fa1c
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_client.c

index 7ca048f..f6409f9 100644 (file)
@@ -174,8 +174,6 @@ void i40e_notify_client_of_l2_param_changes(struct i40e_vsi *vsi)
 
        if (!vsi)
                return;
-       memset(&params, 0, sizeof(params));
-       i40e_client_get_params(vsi, &params);
        mutex_lock(&i40e_client_instance_mutex);
        list_for_each_entry(cdev, &i40e_client_instances, list) {
                if (cdev->lan_info.pf == vsi->back) {
@@ -186,6 +184,8 @@ void i40e_notify_client_of_l2_param_changes(struct i40e_vsi *vsi)
                                        "Cannot locate client instance l2_param_change routine\n");
                                continue;
                        }
+       memset(&params, 0, sizeof(params));
+       i40e_client_get_params(vsi, &params);
                        if (!test_bit(__I40E_CLIENT_INSTANCE_OPENED,
                                      &cdev->state)) {
                                dev_dbg(&vsi->back->pdev->dev, "Client is not open, abort l2 param change\n");