diff -c modules/em8300_alsa.c modules.new/em8300_alsa.c
*** modules/em8300_alsa.c	2011-02-06 16:21:20.458183001 +0100
--- modules.new/em8300_alsa.c	2011-02-06 16:29:13.634849668 +0100
***************
*** 487,493 ****
  
  	memset(em8300_alsa, 0, sizeof(em8300_alsa_t));
  
! 	init_MUTEX(&em8300_alsa->lock);
  
  	em8300_alsa->em = em;
  	em8300_alsa->card = card;
--- 487,493 ----
  
  	memset(em8300_alsa, 0, sizeof(em8300_alsa_t));
  
! 	sema_init(&em8300_alsa->lock,1);
  
  	em8300_alsa->em = em;
  	em8300_alsa->card = card;
diff -c modules/em8300_fifo.c modules.new/em8300_fifo.c
*** modules/em8300_fifo.c	2011-02-06 16:21:20.468183000 +0100
--- modules.new/em8300_fifo.c	2011-02-06 16:28:55.214849667 +0100
***************
*** 116,122 ****
  		}
  	}
  
! 	init_MUTEX(&f->lock);
  	f->valid = 1;
  
  	return 0;
--- 116,122 ----
  		}
  	}
  
! 	sema_init(&f->lock,1);
  	f->valid = 1;
  
  	return 0;
diff -c modules/em8300_main.c modules.new/em8300_main.c
*** modules/em8300_main.c	2011-02-06 16:21:20.474849668 +0100
--- modules.new/em8300_main.c	2011-02-06 16:28:31.284849668 +0100
***************
*** 877,883 ****
  	init_waitqueue_head(&em->sp_ptsfifo_wait);
  
  	em->audio_driver_style = NONE;
! 	init_MUTEX(&em->audio_driver_style_lock);
  
  	result = request_irq(dev->irq, em8300_irq, IRQF_SHARED | IRQF_DISABLED, "em8300", (void *) em);
  
--- 877,883 ----
  	init_waitqueue_head(&em->sp_ptsfifo_wait);
  
  	em->audio_driver_style = NONE;
! 	sema_init(&em->audio_driver_style_lock,1);
  
  	result = request_irq(dev->irq, em8300_irq, IRQF_SHARED | IRQF_DISABLED, "em8300", (void *) em);
  
Лише у modules.new: em8300_version.h
