i40evf: fix client notify of l2 params
authorAlan Brady <alan.brady@intel.com>
Tue, 14 Nov 2017 12:00:51 +0000 (07:00 -0500)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 22 Nov 2017 07:37:58 +0000 (23:37 -0800)
commit01acc73f375ed535fa048a9e7f40ed109f7f0276
tree10a3c7fd07eb1a39049c02b317dffb681f0714f1
parent94075bb1ed7c89cdf4c46eca3938ac4f087827af
i40evf: fix client notify of l2 params

The current method for notifying clients of l2 parameters is broken
because we fail to copy the new parameters to the client instance
struct, we need to do the notification before the client 'open' function
pointer gets called, and lastly we should set the l2 parameters when
first adding a client instance.

This patch first introduces the i40evf_client_get_params function to
prevent code duplication in the i40evf_client_add_instance and the
i40evf_notify_client_l2_params functions.  We then fix the notify l2
params function to actually copy the parameters to client instance
struct and do the same in the *_add_instance' function.  Lastly this
patch reorganizes the priority in which client tasks fire so that if the
flag for notifying l2 params is set, it will trigger before the open
because the client needs these new parameters as part of a client open
task.

Signed-off-by: Alan Brady <alan.brady@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40evf/i40evf_client.c
drivers/net/ethernet/intel/i40evf/i40evf_main.c