]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
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 7ca048f0b1595e1b595ffab4367b4d6d58add431..f6409f9b3a3a3c6ebcd0ba2e63df22ca34b9a025 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");