Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2f93d797ea92113a73c72728c475455cb1409fb3
Commit:     2f93d797ea92113a73c72728c475455cb1409fb3
Parent:     c6cd7d7efe2302697a3cbde718e8e3b0d88ba706
Author:     Clemens Ladisch <[EMAIL PROTECTED]>
AuthorDate: Fri Feb 22 18:47:44 2008 +0100
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Fri Feb 22 14:20:09 2008 -0800

    [ALSA] bt87X: fix freeing of shared interrupt
    
    Call free_irq() after iounmap() because other devices could trigger our
    shared interrupt handler.
    
    Signed-off-by: Clemens Ladisch <[EMAIL PROTECTED]>
    Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 sound/pci/bt87x.c |    9 +++------
 1 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/sound/pci/bt87x.c b/sound/pci/bt87x.c
index c9a2421..4ecdd63 100644
--- a/sound/pci/bt87x.c
+++ b/sound/pci/bt87x.c
@@ -681,15 +681,12 @@ static struct snd_kcontrol_new snd_bt87x_capture_source = 
{
 
 static int snd_bt87x_free(struct snd_bt87x *chip)
 {
-       if (chip->mmio) {
+       if (chip->mmio)
                snd_bt87x_stop(chip);
-               if (chip->irq >= 0)
-                       synchronize_irq(chip->irq);
-
-               iounmap(chip->mmio);
-       }
        if (chip->irq >= 0)
                free_irq(chip->irq, chip);
+       if (chip->mmio)
+               iounmap(chip->mmio);
        pci_release_regions(chip->pci);
        pci_disable_device(chip->pci);
        kfree(chip);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to