--- ./drivers/dahdi/xpp/xbus-core.c.orig 2011-01-12 23:40:55.000000000 +0200 +++ ./drivers/dahdi/xpp/xbus-core.c 2011-01-12 23:41:14.000000000 +0200 @@ -1165,7 +1165,7 @@ INIT_LIST_HEAD(&worker->card_list); init_waitqueue_head(&worker->wait_for_xpd_initialization); worker->wq = NULL; - init_MUTEX(&xbus->worker.running_initialization); + sema_init(&xbus->worker.running_initialization, 1); } /* --- ./drivers/dahdi/xpp/xpp_usb.c.orig 2011-01-12 23:42:53.000000000 +0200 +++ ./drivers/dahdi/xpp/xpp_usb.c 2011-01-12 23:43:12.000000000 +0200 @@ -248,7 +248,7 @@ /* prevent races between open() and disconnect() */ -static DECLARE_MUTEX (disconnect_sem); +static DEFINE_SEMAPHORE (disconnect_sem); /* * AsteriskNow kernel has backported the "lean" callback from 2.6.20 @@ -690,7 +690,7 @@ retval = -ENOMEM; goto probe_failed; } - init_MUTEX (&xusb->sem); + sema_init(&xusb->sem, 1); atomic_set(&xusb->pending_writes, 0); atomic_set(&xusb->pending_reads, 0); atomic_set(&xusb->pcm_tx_drops, 0); --- ./drivers/dahdi/wctdm24xxp/base.c.orig 2011-01-12 23:37:46.000000000 +0200 +++ ./drivers/dahdi/wctdm24xxp/base.c 2011-01-12 23:39:25.000000000 +0200 @@ -207,7 +207,7 @@ } struct wctdm *ifaces[WC_MAX_IFACES]; -DECLARE_MUTEX(ifacelock); +DEFINE_SEMAPHORE(ifacelock); static void wctdm_release(struct wctdm *wc); @@ -4917,7 +4917,7 @@ /* This is to insure that the analog span is given lowest priority */ wc->oldsync = -1; - init_MUTEX(&wc->syncsem); + sema_init(&wc->syncsem, 1); INIT_LIST_HEAD(&wc->frame_list); spin_lock_init(&wc->frame_list_lock); --- ./drivers/dahdi/wctdm24xxp/xhfc.c.orig 2011-01-12 23:40:14.000000000 +0200 +++ ./drivers/dahdi/wctdm24xxp/xhfc.c 2011-01-12 23:40:35.000000000 +0200 @@ -2576,8 +2576,8 @@ } spin_lock_init(&b4->reglock); - init_MUTEX(&b4->regsem); - init_MUTEX(&b4->fifosem); + sema_init(&b4->regsem, 1); + sema_init(&b4->fifosem, 1); for (x = 0; x < 4; x++) { fasthdlc_init(&b4->spans[x].rxhdlc, FASTHDLC_MODE_16); --- ./drivers/dahdi/wctc4xxp/base.c.orig 2011-01-12 23:36:25.000000000 +0200 +++ ./drivers/dahdi/wctc4xxp/base.c 2011-01-12 23:39:54.000000000 +0200 @@ -3443,7 +3443,7 @@ return -EIO; } - init_MUTEX(&wc->chansem); + sema_init(&wc->chansem, 1); spin_lock_init(&wc->reglock); spin_lock_init(&wc->cmd_list_lock); spin_lock_init(&wc->rx_list_lock); --- ./drivers/dahdi/voicebus/voicebus.c.orig 2011-01-12 23:33:33.000000000 +0200 +++ ./drivers/dahdi/voicebus/voicebus.c 2011-01-12 23:35:05.000000000 +0200 @@ -36,6 +36,7 @@ #include #include #include +#include #include #include "voicebus.h" @@ -1120,7 +1121,7 @@ */ void voicebus_stop(struct voicebus *vb) { - static DECLARE_MUTEX(stop); + static DEFINE_SEMAPHORE(stop); down(&stop);