| From bc733d495267a23ef8660220d696c6e549ce30b3 Mon Sep 17 00:00:00 2001 |
| From: Takashi Iwai <tiwai@suse.de> |
| Date: Mon, 23 Jul 2012 11:35:55 +0200 |
| Subject: ALSA: mpu401: Fix missing initialization of irq field |
| |
| From: Takashi Iwai <tiwai@suse.de> |
| |
| commit bc733d495267a23ef8660220d696c6e549ce30b3 upstream. |
| |
| The irq field of struct snd_mpu401 is supposed to be initialized to -1. |
| Since it's set to zero as of now, a probing error before the irq |
| installation results in a kernel warning "Trying to free already-free |
| IRQ 0". |
| |
| Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=44821 |
| Signed-off-by: Takashi Iwai <tiwai@suse.de> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| sound/drivers/mpu401/mpu401_uart.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/sound/drivers/mpu401/mpu401_uart.c |
| +++ b/sound/drivers/mpu401/mpu401_uart.c |
| @@ -554,6 +554,7 @@ int snd_mpu401_uart_new(struct snd_card |
| spin_lock_init(&mpu->output_lock); |
| spin_lock_init(&mpu->timer_lock); |
| mpu->hardware = hardware; |
| + mpu->irq = -1; |
| if (! (info_flags & MPU401_INFO_INTEGRATED)) { |
| int res_size = hardware == MPU401_HW_PC98II ? 4 : 2; |
| mpu->res = request_region(port, res_size, "MPU401 UART"); |