diff -Naur --exclude-from /home/mulix/work/dontdiff linux-2.4.19-rc1-ac4/drivers/sound/trident.c linux-2.4.19-rc1-ac4-mx/drivers/sound/trident.c
--- linux-2.4.19-rc1-ac4/drivers/sound/trident.c	Mon Jul 15 23:51:07 2002
+++ linux-2.4.19-rc1-ac4-mx/drivers/sound/trident.c	Mon Jul 15 23:46:18 2002
@@ -36,6 +36,10 @@
  *	Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
  *  History
+ *  v0.14.10b
+ *      June 23 2002 Muli Ben-Yehuda <mulix@actcom.co.il>
+ *      add a missing unlock_set_fmt, remove a superflous lock/unlock pair 
+ *      with nothing in between. 
  *  v0.14.10a
  *      June 21 2002 Muli Ben-Yehuda <mulix@actcom.co.il> 
  *      use a debug macro instead of #ifdef CONFIG_DEBUG, trim to 80 columns 
@@ -187,7 +191,7 @@
 
 #include <linux/pm.h>
 
-#define DRIVER_VERSION "0.14.10a"
+#define DRIVER_VERSION "0.14.10b"
 
 /* magic numbers to protect our data structures */
 #define TRIDENT_CARD_MAGIC	0x5072696E /* "Prin" */
@@ -2266,6 +2270,7 @@
 						{
 							printk(KERN_ERR "trident: Record is working on the card!\n");
 							ret = -EBUSY;
+							unlock_set_fmt(state); 
 							break;
 						}
 
@@ -2700,9 +2705,6 @@
 
 	if (file->f_mode & FMODE_WRITE) {
 		stop_dac(state);
-		lock_set_fmt(state);
-
-		unlock_set_fmt(state);
 		dealloc_dmabuf(state);
 		state->card->free_pcm_channel(state->card, dmabuf->channel->num);
 
