[PATCH] [UBUNTU:sound/pci/emu10k1/] Don't hang when Audigy 2 ZS (cardbus) is removed

crimsun at fungus.sh.nu crimsun at fungus.sh.nu
Mon Jul 24 21:11:04 UTC 2006


From c795c46b761704a1ca2dbdf2b9753f66c881f164 Mon Sep 17 00:00:00 2001
From: Daniel T. Chen <crimsun at garnish.localdomain>
Date: Mon, 24 Jul 2006 17:05:20 -0400
Subject: [PATCH] [UBUNTU:sound/pci/emu10k1/] Don't hang when Audigy 2 ZS (cardbus) is removed

UpstreamStatus: Added in upstream alsa-kernel hg changeset f7f4bee7a600
                http://hg-mirror.alsa-project.org/alsa-kernel?cmd=changeset;node=f7f4bee7a6004da8d3004819b4d8701668f0a302;style=raw

This patch from James Courtier-Dutton fixes ALSA bug #2190 where the
system hangs after an Audigy 2 ZS (cardbus) is unplugged.

Signed-off-by: Daniel T Chen <crimsun at ubuntu.com>
---
 sound/pci/emu10k1/irq.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/sound/pci/emu10k1/irq.c b/sound/pci/emu10k1/irq.c
index 594ea06..10d81b6 100644
--- a/sound/pci/emu10k1/irq.c
+++ b/sound/pci/emu10k1/irq.c
@@ -37,9 +37,13 @@ irqreturn_t snd_emu10k1_interrupt(int ir
 	int handled = 0;
 
 	while ((status = inl(emu->port + IPR)) != 0) {
-		//printk("emu10k1 irq - status = 0x%x\n", status);
+		//snd_printk(KERN_INFO "emu10k1 irq - status = 0x%x\n", status);
 		orig_status = status;
 		handled = 1;
+		if ((status & 0xffffffff) == 0xffffffff) {
+			snd_printk(KERN_INFO "snd-emu10k1: Suspected sound card removal\n");
+			break;
+		}
 		if (status & IPR_PCIERROR) {
 			snd_printk(KERN_ERR "interrupt: PCI error\n");
 			snd_emu10k1_intr_disable(emu, INTE_PCIERRORENABLE);
-- 
1.4.1



-- 
Daniel T. Chen            crimsun at ubuntu.com
GPG key:   www.sh.nu/~crimsun/pubkey.gpg.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20060724/1d86a01e/attachment.sig>


More information about the kernel-team mailing list