| From stable-bounces@linux.kernel.org Thu Apr 28 00:35:07 2005 |
| From: Gregor Jasny <gjasny@web.de> |
| To: stable@kernel.org |
| Date: Thu, 28 Apr 2005 09:26:48 +0200 |
| Subject: [stable] [PATCH] usbaudio: prevent oops & dead keyboard on usb |
| unplugging while the device is being used |
| |
| Summary: prevent oops & dead keyboard on usb unplugging while the device is being used |
| |
| Without this patch, some usb kobjects, which are parents to |
| the usx2y's kobjects can be freed before the usx2y's. |
| This led to an oops in get_kobj_path_length() and a dead |
| keyboard, when the usx2y's kobjects were freed. |
| The patch ensures the correct sequence. |
| Tested ok on kernel 2.6.12-rc2. |
| |
| Present in ALSA cvs |
| |
| Signed-off-by: Karsten Wiese <annabellesgarden@yahoo.de> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
| |
| |
| --- |
| sound/usb/usbaudio.c | 2 +- |
| 1 files changed, 1 insertion(+), 1 deletion(-) |
| |
| --- linux-2.6.11.10.orig/sound/usb/usbaudio.c 2005-05-16 10:52:18.000000000 -0700 |
| +++ linux-2.6.11.10/sound/usb/usbaudio.c 2005-05-20 09:36:37.396488696 -0700 |
| @@ -3276,7 +3276,7 @@ |
| } |
| usb_chip[chip->index] = NULL; |
| up(®ister_mutex); |
| - snd_card_free_in_thread(card); |
| + snd_card_free(card); |
| } else { |
| up(®ister_mutex); |
| } |