i40e: remove client instance on driver unload
authorMitch Williams <mitch.a.williams@intel.com>
Thu, 30 Mar 2017 07:46:06 +0000 (00:46 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Fri, 7 Apr 2017 03:22:27 +0000 (20:22 -0700)
When the driver is unloaded, we need to remove the client instance,
otherwise we leak memory.

Change-ID: If1e7882ac1f6ce15d004722fafbe31afbe0adc9a
Signed-off-by: Mitch Williams <mitch.a.williams@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 191028b..d05296a 100644 (file)
@@ -459,6 +459,9 @@ int i40e_lan_del_device(struct i40e_pf *pf)
        struct i40e_device *ldev, *tmp;
        int ret = -ENODEV;
 
+       /* First, remove any client instance. */
+       i40e_client_del_instance(pf);
+
        mutex_lock(&i40e_device_mutex);
        list_for_each_entry_safe(ldev, tmp, &i40e_devices, list) {
                if (ldev->pf == pf) {