patch-2.4.0-test4 linux/drivers/sound/via82cxxx_audio.c

Next file: linux/drivers/sound/vwsnd.c
Previous file: linux/drivers/sound/trident.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test3/linux/drivers/sound/via82cxxx_audio.c linux/drivers/sound/via82cxxx_audio.c
@@ -30,6 +30,7 @@
 #include <linux/poll.h>
 #include <linux/soundcard.h>
 #include <linux/ac97_codec.h>
+#include <linux/smp_lock.h>
 #include <asm/io.h>
 #include <asm/delay.h>
 #include <asm/uaccess.h>
@@ -2207,6 +2208,7 @@
 	card = file->private_data;
 	assert (card != NULL);
 	
+	lock_kernel();
 	if (file->f_mode & FMODE_READ)
 		via_chan_free (card, &card->ch_in);
 
@@ -2220,6 +2222,7 @@
 	spin_unlock_irqrestore (&card->lock, flags);
 
  	wake_up (&card->open_wait);
+	unlock_kernel();
 
 	DPRINTK("EXIT, returning 0\n");
 	return 0;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)