Commit a8258069 authored by Alan Jenkins's avatar Alan Jenkins Committed by Len Brown
Browse files

eeepc-laptop: fix rfkill memory leak on unload



rfkill_unregister() should always be followed by rfkill_destroy()

Signed-off-by: default avatarAlan Jenkins <alan-jenkins@tuffmail.co.uk>
Signed-off-by: default avatarCorentin Chary <corentincj@iksaif.net>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent be966660
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -985,6 +985,7 @@ static void eeepc_rfkill_exit(void)
	eeepc_unregister_rfkill_notifier("\\_SB.PCI0.P0P7");
	if (ehotk->wlan_rfkill) {
		rfkill_unregister(ehotk->wlan_rfkill);
		rfkill_destroy(ehotk->wlan_rfkill);
		ehotk->wlan_rfkill = NULL;
	}
	/*
@@ -995,12 +996,21 @@ static void eeepc_rfkill_exit(void)
	if (ehotk->hotplug_slot)
		pci_hp_deregister(ehotk->hotplug_slot);

	if (ehotk->bluetooth_rfkill)
	if (ehotk->bluetooth_rfkill) {
		rfkill_unregister(ehotk->bluetooth_rfkill);
	if (ehotk->wwan3g_rfkill)
		rfkill_destroy(ehotk->bluetooth_rfkill);
		ehotk->bluetooth_rfkill = NULL;
	}
	if (ehotk->wwan3g_rfkill) {
		rfkill_unregister(ehotk->wwan3g_rfkill);
	if (ehotk->wimax_rfkill)
		rfkill_destroy(ehotk->wwan3g_rfkill);
		ehotk->wwan3g_rfkill = NULL;
	}
	if (ehotk->wimax_rfkill) {
		rfkill_unregister(ehotk->wimax_rfkill);
		rfkill_destroy(ehotk->wimax_rfkill);
		ehotk->wimax_rfkill = NULL;
	}
}

static void eeepc_input_exit(void)