From 8c6a0f544b33aa432c18a1a2442d40f9783a4088 Mon Sep 17 00:00:00 2001 From: Dmitry Torokhov Date: Wed, 7 Sep 2011 15:00:02 -0700 Subject: [PATCH] --- yaml --- r: 272014 b: refs/heads/master c: 023b9565972a4a5e0f01b9aa32680af6e9b5c388 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/platform/x86/wmi.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index f217d0604066..384132f8ab34 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 349d594be45bdc7a86a08385f2f4f49d08ab68dd +refs/heads/master: 023b9565972a4a5e0f01b9aa32680af6e9b5c388 diff --git a/trunk/drivers/platform/x86/wmi.c b/trunk/drivers/platform/x86/wmi.c index f23d5a84e7b1..9b88be42b6cd 100644 --- a/trunk/drivers/platform/x86/wmi.c +++ b/trunk/drivers/platform/x86/wmi.c @@ -754,9 +754,13 @@ static void wmi_free_devices(void) struct wmi_block *wblock, *next; /* Delete devices for all the GUIDs */ - list_for_each_entry_safe(wblock, next, &wmi_block_list, list) + list_for_each_entry_safe(wblock, next, &wmi_block_list, list) { + list_del(&wblock->list); if (wblock->dev.class) device_unregister(&wblock->dev); + else + kfree(wblock); + } } static bool guid_already_parsed(const char *guid_string)