CINXE.COM
LKML: David Howells: [PATCH 9/19] MUTEX: Drivers L-M changes
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>LKML: David Howells: [PATCH 9/19] MUTEX: Drivers L-M changes</title><link href="/css/message.css" rel="stylesheet" type="text/css" /><link href="/css/wrap.css" rel="alternate stylesheet" type="text/css" title="wrap" /><link href="/css/nowrap.css" rel="stylesheet" type="text/css" title="nowrap" /><link href="/favicon.ico" rel="shortcut icon" /><script src="/js/simple-calendar.js" type="text/javascript"></script><script src="/js/styleswitcher.js" type="text/javascript"></script><link rel="alternate" type="application/rss+xml" title="lkml.org : last 100 messages" href="/rss.php" /><link rel="alternate" type="application/rss+xml" title="lkml.org : last messages by David Howells" href="/groupie.php?aid=345" /><!--Matomo--><script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(["setDoNotTrack", true]); _paq.push(["disableCookies"]); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="//m.lkml.org/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '1']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script><!--End Matomo Code--></head><body onload="es.jasper.simpleCalendar.init();" itemscope="itemscope" itemtype="http://schema.org/BlogPosting"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="180" align="center"><a href="/"><img style="border:0;width:135px;height:32px" src="/images/toprowlk.gif" alt="lkml.org" /></a></td><td width="32">聽</td><td class="nb"><div><a class="nb" href="/lkml"> [lkml]</a> 聽 <a class="nb" href="/lkml/2005"> [2005]</a> 聽 <a class="nb" href="/lkml/2005/12"> [Dec]</a> 聽 <a class="nb" href="/lkml/2005/12/12"> [12]</a> 聽 <a class="nb" href="/lkml/last100"> [last100]</a> 聽 <a href="/rss.php"><img src="/images/rss-or.gif" border="0" alt="RSS Feed" /></a></div><div>Views: <a href="#" class="nowrap" onclick="setActiveStyleSheet('wrap');return false;">[wrap]</a><a href="#" class="wrap" onclick="setActiveStyleSheet('nowrap');return false;">[no wrap]</a> 聽 <a class="nb" href="/lkml/mheaders/2005/12/12/253" onclick="this.href='/lkml/headers'+'/2005/12/12/253';">[headers]</a>聽 <a href="/lkml/bounce/2005/12/12/253">[forward]</a>聽 </div></td><td width="32">聽</td></tr><tr><td valign="top"><div class="es-jasper-simpleCalendar" baseurl="/lkml/"></div><div class="threadlist">Messages in this thread</div><ul class="threadlist"><li class="root"><a href="/lkml/2005/12/12/244">First message in thread</a></li><li><a href="/lkml/2005/12/12/244">David Howells</a><ul><li><a href="/lkml/2005/12/12/241">David Howells</a></li><li><a href="/lkml/2005/12/12/242">David Howells</a></li><li><a href="/lkml/2005/12/12/243">David Howells</a></li><li><a href="/lkml/2005/12/12/245">David Howells</a></li><li><a href="/lkml/2005/12/12/246">David Howells</a></li><li><a href="/lkml/2005/12/12/247">David Howells</a></li><li><a href="/lkml/2005/12/12/248">David Howells</a></li><li><a href="/lkml/2005/12/12/249">David Howells</a></li><li><a href="/lkml/2005/12/12/250">David Howells</a></li><li><a href="/lkml/2005/12/12/251">David Howells</a></li><li><a href="/lkml/2005/12/12/252">David Howells</a></li><li class="origin"><a href="">David Howells</a></li><li><a href="/lkml/2005/12/12/254">David Howells</a></li><li><a href="/lkml/2005/12/12/255">David Howells</a></li><li><a href="/lkml/2005/12/12/256">David Howells</a></li><li><a href="/lkml/2005/12/12/257">David Howells</a></li><li><a href="/lkml/2005/12/12/259">David Howells</a></li><li><a href="/lkml/2005/12/12/260">David Howells</a></li><li><a href="/lkml/2005/12/12/266">Nick Piggin</a><ul><li><a href="/lkml/2005/12/13/107">David Howells</a><ul><li><a href="/lkml/2005/12/13/114">Ingo Molnar</a><ul><li><a href="/lkml/2005/12/13/125">Ingo Molnar</a></li></ul></li><li><a href="/lkml/2005/12/13/431">Nick Piggin</a><ul><li><a href="/lkml/2005/12/14/82">David Howells</a></li></ul></li></ul></li></ul></li><li><a href="/lkml/2005/12/12/268">Andrew Morton</a><ul><li><a href="/lkml/2005/12/13/30">Ingo Molnar</a><ul><li><a href="/lkml/2005/12/13/32">Andi Kleen</a><ul><li><a href="/lkml/2005/12/13/74">Andrew Morton</a></li></ul></li><li><a href="/lkml/2005/12/13/33">Arjan van de Ven</a><ul><li><a href="/lkml/2005/12/13/83">Ingo Molnar</a></li></ul></li><li><a href="/lkml/2005/12/13/78">Christoph Hellwig</a><ul><li><a href="/lkml/2005/12/13/102">Ingo Molnar</a></li></ul></li><li><a href="/lkml/2005/12/13/108">Ingo Molnar</a></li></ul></li><li><a href="/lkml/2005/12/13/127">David Howells</a><ul><li><a href="/lkml/2005/12/13/139">Matthew Wilcox</a></li></ul></li></ul></li><li><a href="/lkml/2005/12/12/269">Nick Piggin</a><ul><li><a href="/lkml/2005/12/13/131">David Howells</a><ul><li><a href="/lkml/2005/12/13/133">David Howells</a></li></ul></li></ul></li><li><a href="/lkml/2005/12/12/272">Arnd Bergmann</a><ul><li><a href="/lkml/2005/12/13/323">David Howells</a></li></ul></li><li><a href="/lkml/2005/12/12/276">Daniel Walker</a><ul><li><a href="/lkml/2005/12/12/311">Steven Rostedt</a></li></ul></li><li><a href="/lkml/2005/12/12/296">Mark Lord</a><ul><li><a href="/lkml/2005/12/12/310">Steven Rostedt</a></li><li><a href="/lkml/2005/12/13/85">Christoph Hellwig</a></li></ul></li><li><a href="/lkml/2005/12/13/128">Ingo Molnar</a><ul><li><a href="/lkml/2005/12/13/132">David Howells</a><ul><li><a href="/lkml/2005/12/13/166">Ingo Molnar</a></li></ul></li></ul></li><li><a href="/lkml/2005/12/13/142">Alan Cox</a><ul><li><a href="/lkml/2005/12/13/147">Alan Cox</a><ul><li><a href="/lkml/2005/12/13/406">Nikita Danilov</a></li></ul></li><li><a href="/lkml/2005/12/13/151">David Howells</a><ul><li><a href="/lkml/2005/12/13/172">Alan Cox</a><ul><li><a href="/lkml/2005/12/13/205">David Howells</a></li></ul></li><li><a href="/lkml/2005/12/13/187">"Christopher Friesen"</a><ul><li><a href="/lkml/2005/12/13/188">Arjan van de Ven</a></li><li><a href="/lkml/2005/12/13/213">David Howells</a></li></ul></li><li><a href="/lkml/2005/12/13/306">Steven Rostedt</a></li></ul></li></ul></li></ul></li></ul><div class="threadlist">Patch in this message</div><ul class="threadlist"><li><a href="/lkml/diff/2005/12/12/253/1">Get diff 1</a></li></ul></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerl.gif" width="32" height="32" alt="/" /></td><td class="c" rowspan="2" valign="top" style="padding-top: 1em"><table><tr><td><table><tr><td class="lp">Date</td><td class="rp" itemprop="datePublished">Mon, 12 Dec 2005 23:45:48 GMT</td></tr><tr><td class="lp">From</td><td class="rp" itemprop="author">David Howells <></td></tr><tr><td class="lp">Subject</td><td class="rp" itemprop="name">[PATCH 9/19] MUTEX: Drivers L-M changes</td></tr></table></td><td></td></tr></table><pre itemprop="articleBody">The attached patch modifies the files of the drivers/l* thru drivers/m* to use<br />the new mutex functions.<br /><br />Signed-Off-By: David Howells <dhowells@redhat.com><br />---<br />warthog>diffstat -p1 mutex-drivers-LtoM-2615rc5.diff<br /> drivers/macintosh/adb.c | 2 +-<br /> drivers/macintosh/mediabay.c | 2 +-<br /> drivers/macintosh/therm_windtunnel.c | 2 +-<br /> drivers/md/dm-raid1.c | 10 +++++-----<br /> drivers/md/dm.c | 2 +-<br /> drivers/md/kcopyd.c | 2 +-<br /> drivers/media/dvb/b2c2/flexcop-common.h | 2 +-<br /> drivers/media/dvb/b2c2/flexcop-i2c.c | 2 +-<br /> drivers/media/dvb/bt8xx/bt878.h | 2 +-<br /> drivers/media/dvb/bt8xx/dst.c | 2 +-<br /> drivers/media/dvb/bt8xx/dst_common.h | 2 +-<br /> drivers/media/dvb/bt8xx/dvb-bt8xx.h | 2 +-<br /> drivers/media/dvb/cinergyT2/cinergyT2.c | 2 +-<br /> drivers/media/dvb/dvb-core/dmxdev.c | 4 ++--<br /> drivers/media/dvb/dvb-core/dmxdev.h | 6 +++---<br /> drivers/media/dvb/dvb-core/dvb_demux.c | 2 +-<br /> drivers/media/dvb/dvb-core/dvb_demux.h | 4 ++--<br /> drivers/media/dvb/dvb-core/dvb_frontend.c | 4 ++--<br /> drivers/media/dvb/dvb-core/dvb_frontend.h | 2 +-<br /> drivers/media/dvb/dvb-core/dvb_net.c | 2 +-<br /> drivers/media/dvb/dvb-usb/dvb-usb-init.c | 4 ++--<br /> drivers/media/dvb/dvb-usb/dvb-usb.h | 4 ++--<br /> drivers/media/dvb/frontends/bcm3510.c | 4 ++--<br /> drivers/media/dvb/ttpci/av7110.c | 8 ++++----<br /> drivers/media/dvb/ttpci/av7110.h | 6 +++---<br /> drivers/media/dvb/ttpci/budget.h | 2 +-<br /> drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c | 10 +++++-----<br /> drivers/media/dvb/ttusb-dec/ttusb_dec.c | 10 +++++-----<br /> drivers/media/radio/miropcm20-rds-core.c | 4 ++--<br /> drivers/media/radio/radio-aimslab.c | 4 ++--<br /> drivers/media/radio/radio-aztech.c | 2 +-<br /> drivers/media/radio/radio-maestro.c | 4 ++--<br /> drivers/media/radio/radio-maxiradio.c | 4 ++--<br /> drivers/media/radio/radio-sf16fmi.c | 4 ++--<br /> drivers/media/radio/radio-sf16fmr2.c | 4 ++--<br /> drivers/media/radio/radio-typhoon.c | 2 +-<br /> drivers/media/radio/radio-zoltrix.c | 2 +-<br /> drivers/media/video/arv.c | 4 ++--<br /> drivers/media/video/bttvp.h | 4 ++--<br /> drivers/media/video/bw-qcam.c | 2 +-<br /> drivers/media/video/bw-qcam.h | 2 +-<br /> drivers/media/video/c-qcam.c | 4 ++--<br /> drivers/media/video/cpia.c | 2 +-<br /> drivers/media/video/cpia.h | 4 ++--<br /> drivers/media/video/cx88/cx88.h | 2 +-<br /> drivers/media/video/em28xx/em28xx.h | 2 +-<br /> drivers/media/video/ir-kbd-i2c.c | 2 +-<br /> drivers/media/video/meye.h | 2 +-<br /> drivers/media/video/msp3400.c | 2 +-<br /> drivers/media/video/planb.c | 2 +-<br /> drivers/media/video/planb.h | 2 +-<br /> drivers/media/video/pms.c | 2 +-<br /> drivers/media/video/saa5246a.c | 2 +-<br /> drivers/media/video/saa5249.c | 2 +-<br /> drivers/media/video/saa7134/saa7134.h | 4 ++--<br /> drivers/media/video/tvmixer.c | 2 +-<br /> drivers/media/video/videodev.c | 2 +-<br /> drivers/media/video/vino.c | 4 ++--<br /> drivers/media/video/zoran.h | 2 +-<br /> drivers/message/fusion/mptbase.h | 4 ++--<br /> drivers/message/fusion/mptctl.c | 2 +-<br /> drivers/mfd/ucb1x00-core.c | 4 ++--<br /> drivers/mfd/ucb1x00-ts.c | 2 +-<br /> drivers/mmc/mmc_queue.h | 2 +-<br /> drivers/mtd/devices/blkmtd.c | 2 +-<br /> drivers/mtd/devices/block2mtd.c | 2 +-<br /> drivers/mtd/mtd_blkdevs.c | 4 ++--<br /> drivers/mtd/mtdblock.c | 2 +-<br /> 68 files changed, 108 insertions(+), 108 deletions(-)<br /><br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/macintosh/adb.c linux-2.6.15-rc5-mutex/drivers/macintosh/adb.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/macintosh/adb.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/macintosh/adb.c 2005-12-12 22:12:49.000000000 +0000<br />@@ -39,7 +39,7 @@<br /> #include <linux/devfs_fs_kernel.h><br /> <br /> #include <asm/uaccess.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #ifdef CONFIG_PPC<br /> #include <asm/prom.h><br /> #endif<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/macintosh/mediabay.c linux-2.6.15-rc5-mutex/drivers/macintosh/mediabay.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/macintosh/mediabay.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/macintosh/mediabay.c 2005-12-12 21:45:18.000000000 +0000<br />@@ -78,7 +78,7 @@ struct media_bay_info {<br /> int index;<br /> int cached_gpio;<br /> int sleeping;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> #ifdef CONFIG_BLK_DEV_IDE<br /> void __iomem *cd_base;<br /> int cd_index;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/macintosh/therm_windtunnel.c linux-2.6.15-rc5-mutex/drivers/macintosh/therm_windtunnel.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/macintosh/therm_windtunnel.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/macintosh/therm_windtunnel.c 2005-12-12 21:45:18.000000000 +0000<br />@@ -64,7 +64,7 @@ static struct {<br /> struct completion completion;<br /> pid_t poll_task;<br /> <br />- struct semaphore lock;<br />+ struct mutex lock;<br /> struct of_device *of_dev;<br /> <br /> struct i2c_client *thermostat;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/md/dm.c linux-2.6.15-rc5-mutex/drivers/md/dm.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/md/dm.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/md/dm.c 2005-12-12 20:57:20.000000000 +0000<br />@@ -58,7 +58,7 @@ union map_info *dm_get_mapinfo(struct bi<br /> <br /> struct mapped_device {<br /> struct rw_semaphore io_lock;<br />- struct semaphore suspend_lock;<br />+ struct mutex suspend_lock;<br /> rwlock_t map_lock;<br /> atomic_t holders;<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/md/dm-raid1.c linux-2.6.15-rc5-mutex/drivers/md/dm-raid1.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/md/dm-raid1.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/md/dm-raid1.c 2005-12-12 20:31:51.000000000 +0000<br />@@ -358,7 +358,7 @@ static void rh_update_states(struct regi<br /> rh->log->type->clear_region(rh->log, reg->key);<br /> rh->log->type->complete_resync_work(rh->log, reg->key, 1);<br /> dispatch_bios(rh->ms, &reg->delayed_bios);<br />- up(&rh->recovery_count);<br />+ up_sem(&rh->recovery_count);<br /> mempool_free(reg, rh->region_pool);<br /> }<br /> <br />@@ -468,9 +468,9 @@ static int __rh_recovery_prepare(struct <br /> <br /> static void rh_recovery_prepare(struct region_hash *rh)<br /> {<br />- while (!down_trylock(&rh->recovery_count))<br />+ while (!down_sem_trylock(&rh->recovery_count))<br /> if (__rh_recovery_prepare(rh) <= 0) {<br />- up(&rh->recovery_count);<br />+ up_sem(&rh->recovery_count);<br /> break;<br /> }<br /> }<br />@@ -526,7 +526,7 @@ static void rh_stop_recovery(struct regi<br /> <br /> /* wait for any recovering regions */<br /> for (i = 0; i < MAX_RECOVERY; i++)<br />- down(&rh->recovery_count);<br />+ down_sem(&rh->recovery_count);<br /> }<br /> <br /> static void rh_start_recovery(struct region_hash *rh)<br />@@ -534,7 +534,7 @@ static void rh_start_recovery(struct reg<br /> int i;<br /> <br /> for (i = 0; i < MAX_RECOVERY; i++)<br />- up(&rh->recovery_count);<br />+ up_sem(&rh->recovery_count);<br /> <br /> wake();<br /> }<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/md/kcopyd.c linux-2.6.15-rc5-mutex/drivers/md/kcopyd.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/md/kcopyd.c 2005-03-02 12:08:10.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/md/kcopyd.c 2005-12-12 20:57:05.000000000 +0000<br />@@ -191,7 +191,7 @@ struct kcopyd_job {<br /> * These fields are only used if the job has been split<br /> * into more manageable parts.<br /> */<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> atomic_t sub_jobs;<br /> sector_t progress;<br /> };<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/b2c2/flexcop-common.h linux-2.6.15-rc5-mutex/drivers/media/dvb/b2c2/flexcop-common.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/b2c2/flexcop-common.h 2005-08-30 13:56:18.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/b2c2/flexcop-common.h 2005-12-12 20:02:23.000000000 +0000<br />@@ -73,7 +73,7 @@ struct flexcop_device {<br /> int (*fe_sleep) (struct dvb_frontend *);<br /> <br /> struct i2c_adapter i2c_adap;<br />- struct semaphore i2c_sem;<br />+ struct mutex i2c_sem;<br /> <br /> struct module *owner;<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/b2c2/flexcop-i2c.c linux-2.6.15-rc5-mutex/drivers/media/dvb/b2c2/flexcop-i2c.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/b2c2/flexcop-i2c.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/b2c2/flexcop-i2c.c 2005-12-12 20:01:59.000000000 +0000<br />@@ -180,7 +180,7 @@ int flexcop_i2c_init(struct flexcop_devi<br /> {<br /> int ret;<br /> <br />- sema_init(&fc->i2c_sem,1);<br />+ init_MUTEX(&fc->i2c_sem);<br /> <br /> memset(&fc->i2c_adap, 0, sizeof(struct i2c_adapter));<br /> strncpy(fc->i2c_adap.name, "B2C2 FlexCop device",I2C_NAME_SIZE);<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/bt878.h linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/bt878.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/bt878.h 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/bt878.h 2005-12-12 21:01:28.000000000 +0000<br />@@ -91,7 +91,7 @@<br /> extern int bt878_num;<br /> <br /> struct bt878 {<br />- struct semaphore gpio_lock;<br />+ struct mutex gpio_lock;<br /> unsigned int nr;<br /> unsigned int bttv_nr;<br /> struct i2c_adapter *adapter;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/dst.c linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/dst.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/dst.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/dst.c 2005-12-12 20:05:44.000000000 +0000<br />@@ -910,7 +910,7 @@ static int dst_get_device_id(struct dst_<br /> <br /> static int dst_probe(struct dst_state *state)<br /> {<br />- sema_init(&state->dst_mutex, 1);<br />+ init_MUTEX(&state->dst_mutex);<br /> if ((rdc_8820_reset(state)) < 0) {<br /> dprintk(verbose, DST_ERROR, 1, "RDC 8820 RESET Failed.");<br /> return -1;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/dst_common.h linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/dst_common.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/dst_common.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/dst_common.h 2005-12-12 20:05:57.000000000 +0000<br />@@ -121,7 +121,7 @@ struct dst_state {<br /> u8 vendor[8];<br /> u8 board_info[8];<br /> <br />- struct semaphore dst_mutex;<br />+ struct mutex dst_mutex;<br /> };<br /> <br /> struct dst_types {<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/dvb-bt8xx.h linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/dvb-bt8xx.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/bt8xx/dvb-bt8xx.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/bt8xx/dvb-bt8xx.h 2005-12-12 21:01:24.000000000 +0000<br />@@ -38,7 +38,7 @@<br /> #include "lgdt330x.h"<br /> <br /> struct dvb_bt8xx_card {<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> int nfeeds;<br /> char card_name[32];<br /> struct dvb_adapter dvb_adapter;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/cinergyT2/cinergyT2.c linux-2.6.15-rc5-mutex/drivers/media/dvb/cinergyT2/cinergyT2.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/cinergyT2/cinergyT2.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/cinergyT2/cinergyT2.c 2005-12-12 21:01:13.000000000 +0000<br />@@ -116,7 +116,7 @@ static struct dvb_frontend_info cinergyt<br /> struct cinergyt2 {<br /> struct dvb_demux demux;<br /> struct usb_device *udev;<br />- struct semaphore sem;<br />+ struct mutex sem;<br /> struct dvb_adapter adapter;<br /> struct dvb_device *fedev;<br /> struct dmxdev dmxdev;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dmxdev.c linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dmxdev.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dmxdev.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dmxdev.c 2005-12-12 20:01:25.000000000 +0000<br />@@ -701,7 +701,7 @@ static int dvb_demux_open(struct inode *<br /> }<br /> <br /> dmxdevfilter=&dmxdev->filter[i];<br />- sema_init(&dmxdevfilter->mutex, 1);<br />+ init_MUTEX(&dmxdevfilter->mutex);<br /> dmxdevfilter->dvbdev=dmxdev->dvbdev;<br /> file->private_data=dmxdevfilter;<br /> <br />@@ -1113,7 +1113,7 @@ dvb_dmxdev_init(struct dmxdev *dmxdev, s<br /> return -ENOMEM;<br /> }<br /> <br />- sema_init(&dmxdev->mutex, 1);<br />+ init_MUTEX(&dmxdev->mutex);<br /> spin_lock_init(&dmxdev->lock);<br /> for (i=0; i<dmxdev->filternum; i++) {<br /> dmxdev->filter[i].dev=dmxdev;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dmxdev.h linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dmxdev.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dmxdev.h 2005-06-22 13:51:50.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dmxdev.h 2005-12-12 22:12:50.000000000 +0000<br />@@ -30,7 +30,7 @@<br /> #include <linux/wait.h><br /> #include <linux/fs.h><br /> #include <linux/string.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #include <linux/dvb/dmx.h><br /> <br />@@ -83,7 +83,7 @@ struct dmxdev_filter {<br /> struct dmxdev *dev;<br /> struct dmxdev_buffer buffer;<br /> <br />- struct semaphore mutex;<br />+ struct mutex mutex;<br /> <br /> /* only for sections */<br /> struct timer_list timer;<br />@@ -117,7 +117,7 @@ struct dmxdev {<br /> struct dmxdev_buffer dvr_buffer;<br /> #define DVR_BUFFER_SIZE (10*188*1024)<br /> <br />- struct semaphore mutex;<br />+ struct mutex mutex;<br /> spinlock_t lock;<br /> };<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_demux.c linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_demux.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_demux.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_demux.c 2005-12-12 20:00:22.000000000 +0000<br />@@ -1215,7 +1215,7 @@ int dvb_dmx_init(struct dvb_demux *dvbde<br /> dmx->disconnect_frontend = dvbdmx_disconnect_frontend;<br /> dmx->get_pes_pids = dvbdmx_get_pes_pids;<br /> <br />- sema_init(&dvbdemux->mutex, 1);<br />+ init_MUTEX(&dvbdemux->mutex);<br /> spin_lock_init(&dvbdemux->lock);<br /> <br /> return 0;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_demux.h linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_demux.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_demux.h 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_demux.h 2005-12-12 22:12:50.000000000 +0000<br />@@ -26,7 +26,7 @@<br /> #include <linux/time.h><br /> #include <linux/timer.h><br /> #include <linux/spinlock.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #include "demux.h"<br /> <br />@@ -125,7 +125,7 @@ struct dvb_demux {<br /> u8 tsbuf[204];<br /> int tsbufp;<br /> <br />- struct semaphore mutex;<br />+ struct mutex mutex;<br /> spinlock_t lock;<br /> };<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_frontend.c linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_frontend.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_frontend.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_frontend.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -37,7 +37,7 @@<br /> #include <linux/suspend.h><br /> #include <linux/jiffies.h><br /> #include <asm/processor.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #include "dvb_frontend.h"<br /> #include "dvbdev.h"<br />@@ -95,7 +95,7 @@ struct dvb_frontend_private {<br /> struct dvb_device *dvbdev;<br /> struct dvb_frontend_parameters parameters;<br /> struct dvb_fe_events events;<br />- struct semaphore sem;<br />+ struct mutex sem;<br /> struct list_head list_head;<br /> wait_queue_head_t wait_queue;<br /> pid_t thread_pid;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_frontend.h linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_frontend.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_frontend.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_frontend.h 2005-12-12 21:00:24.000000000 +0000<br />@@ -86,7 +86,7 @@ struct dvb_fe_events {<br /> int eventr;<br /> int overflow;<br /> wait_queue_head_t wait_queue;<br />- struct semaphore sem;<br />+ struct mutex sem;<br /> };<br /> <br /> struct dvb_frontend {<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_net.c linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_net.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-core/dvb_net.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-core/dvb_net.c 2005-12-12 21:00:56.000000000 +0000<br />@@ -152,7 +152,7 @@ struct dvb_net_priv {<br /> int ule_sndu_remain; /* Nr. of bytes still required for current ULE SNDU. */<br /> unsigned long ts_count; /* Current ts cell counter. */<br /> <br />- struct semaphore mutex;<br />+ struct mutex mutex;<br /> };<br /> <br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-usb/dvb-usb.h linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-usb/dvb-usb.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-usb/dvb-usb.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-usb/dvb-usb.h 2005-12-12 20:03:48.000000000 +0000<br />@@ -276,10 +276,10 @@ struct dvb_usb_device {<br /> int pid_filtering;<br /> <br /> /* locking */<br />- struct semaphore usb_sem;<br />+ struct mutex usb_sem;<br /> <br /> /* i2c */<br />- struct semaphore i2c_sem;<br />+ struct mutex i2c_sem;<br /> struct i2c_adapter i2c_adap;<br /> <br /> /* tuner programming information */<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-usb/dvb-usb-init.c linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-usb/dvb-usb-init.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/dvb-usb/dvb-usb-init.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/dvb-usb/dvb-usb-init.c 2005-12-12 20:03:58.000000000 +0000<br />@@ -42,8 +42,8 @@ static int dvb_usb_init(struct dvb_usb_d<br /> {<br /> int ret = 0;<br /> <br />- sema_init(&d->usb_sem, 1);<br />- sema_init(&d->i2c_sem, 1);<br />+ init_MUTEX(&d->usb_sem);<br />+ init_MUTEX(&d->i2c_sem);<br /> <br /> d->state = DVB_USB_STATE_INIT;<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/frontends/bcm3510.c linux-2.6.15-rc5-mutex/drivers/media/dvb/frontends/bcm3510.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/frontends/bcm3510.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/frontends/bcm3510.c 2005-12-12 20:00:14.000000000 +0000<br />@@ -52,7 +52,7 @@ struct bcm3510_state {<br /> struct dvb_frontend frontend;<br /> <br /> /* demodulator private data */<br />- struct semaphore hab_sem;<br />+ struct mutex hab_sem;<br /> u8 firmware_loaded:1;<br /> <br /> unsigned long next_status_check;<br />@@ -797,7 +797,7 @@ struct dvb_frontend* bcm3510_attach(cons<br /> state->frontend.ops = &state->ops;<br /> state->frontend.demodulator_priv = state;<br /> <br />- sema_init(&state->hab_sem, 1);<br />+ init_MUTEX(&state->hab_sem);<br /> <br /> if ((ret = bcm3510_readB(state,0xe0,&v)) < 0)<br /> goto error;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttpci/av7110.c linux-2.6.15-rc5-mutex/drivers/media/dvb/ttpci/av7110.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttpci/av7110.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/ttpci/av7110.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -54,7 +54,7 @@<br /> #include <linux/i2c.h><br /> <br /> #include <asm/system.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #include <linux/dvb/frontend.h><br /> <br />@@ -2650,16 +2650,16 @@ static int av7110_attach(struct saa7146_<br /> tasklet_init (&av7110->debi_tasklet, debiirq, (unsigned long) av7110);<br /> tasklet_init (&av7110->gpio_tasklet, gpioirq, (unsigned long) av7110);<br /> <br />- sema_init(&av7110->pid_mutex, 1);<br />+ init_SEMA(&av7110->pid_mutex);<br /> <br /> /* locks for data transfers from/to AV7110 */<br /> spin_lock_init(&av7110->debilock);<br />- sema_init(&av7110->dcomlock, 1);<br />+ init_MUTEX(&av7110->dcomlock);<br /> av7110->debitype = -1;<br /> <br /> /* default OSD window */<br /> av7110->osdwin = 1;<br />- sema_init(&av7110->osd_sema, 1);<br />+ init_MUTEX(&av7110->osd_sema);<br /> <br /> /* ARM "watchdog" */<br /> init_waitqueue_head(&av7110->arm_wait);<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttpci/av7110.h linux-2.6.15-rc5-mutex/drivers/media/dvb/ttpci/av7110.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttpci/av7110.h 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/ttpci/av7110.h 2005-12-12 20:03:15.000000000 +0000<br />@@ -126,7 +126,7 @@ struct av7110 {<br /> /* DEBI and polled command interface */<br /> <br /> spinlock_t debilock;<br />- struct semaphore dcomlock;<br />+ struct mutex dcomlock;<br /> volatile int debitype;<br /> volatile int debilen;<br /> <br />@@ -145,7 +145,7 @@ struct av7110 {<br /> <br /> int osdwin; /* currently active window */<br /> u16 osdbpp[8];<br />- struct semaphore osd_sema;<br />+ struct mutex osd_sema;<br /> <br /> /* CA */<br /> <br />@@ -171,7 +171,7 @@ struct av7110 {<br /> struct tasklet_struct vpe_tasklet;<br /> <br /> int fe_synced;<br />- struct semaphore pid_mutex;<br />+ struct mutex pid_mutex;<br /> <br /> int video_blank;<br /> struct video_status videostate;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttpci/budget.h linux-2.6.15-rc5-mutex/drivers/media/dvb/ttpci/budget.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttpci/budget.h 2005-06-22 13:51:52.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/ttpci/budget.h 2005-12-12 21:01:03.000000000 +0000<br />@@ -51,7 +51,7 @@ struct budget {<br /> struct dmx_frontend mem_frontend;<br /> <br /> int fe_synced;<br />- struct semaphore pid_mutex;<br />+ struct mutex pid_mutex;<br /> <br /> int ci_present;<br /> int video_port;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c linux-2.6.15-rc5-mutex/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -19,7 +19,7 @@<br /> #include <linux/time.h><br /> #include <linux/errno.h><br /> #include <linux/jiffies.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #include "dvb_frontend.h"<br /> #include "dmxdev.h"<br />@@ -83,8 +83,8 @@ struct ttusb {<br /> struct dvb_net dvbnet;<br /> <br /> /* and one for USB access. */<br />- struct semaphore semi2c;<br />- struct semaphore semusb;<br />+ struct mutex semi2c;<br />+ struct mutex semusb;<br /> <br /> struct dvb_adapter adapter;<br /> struct usb_device *dev;<br />@@ -1497,8 +1497,8 @@ static int ttusb_probe(struct usb_interf<br /> ttusb->dev = udev;<br /> ttusb->c = 0;<br /> ttusb->mux_state = 0;<br />- sema_init(&ttusb->semi2c, 0);<br />- sema_init(&ttusb->semusb, 1);<br />+ init_MUTEX_LOCKED(&ttusb->semi2c);<br />+ init_MUTEX(&ttusb->semusb);<br /> <br /> ttusb_setup_interfaces(ttusb);<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttusb-dec/ttusb_dec.c linux-2.6.15-rc5-mutex/drivers/media/dvb/ttusb-dec/ttusb_dec.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/dvb/ttusb-dec/ttusb_dec.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/dvb/ttusb-dec/ttusb_dec.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -20,7 +20,7 @@<br /> *<br /> */<br /> <br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <linux/list.h><br /> #include <linux/module.h><br /> #include <linux/moduleparam.h><br />@@ -115,7 +115,7 @@ struct ttusb_dec {<br /> unsigned int out_pipe;<br /> unsigned int irq_pipe;<br /> enum ttusb_dec_interface interface;<br />- struct semaphore usb_sem;<br />+ struct mutex usb_sem;<br /> <br /> void *irq_buffer;<br /> struct urb *irq_urb;<br />@@ -124,7 +124,7 @@ struct ttusb_dec {<br /> dma_addr_t iso_dma_handle;<br /> struct urb *iso_urb[ISO_BUF_COUNT];<br /> int iso_stream_count;<br />- struct semaphore iso_sem;<br />+ struct mutex iso_sem;<br /> <br /> u8 packet[MAX_PVA_LENGTH + 4];<br /> enum ttusb_dec_packet_type packet_type;<br />@@ -1230,8 +1230,8 @@ static int ttusb_dec_init_usb(struct ttu<br /> {<br /> dprintk("%s\n", __FUNCTION__);<br /> <br />- sema_init(&dec->usb_sem, 1);<br />- sema_init(&dec->iso_sem, 1);<br />+ init_MUTEX(&dec->usb_sem);<br />+ init_MUTEX(&dec->iso_sem);<br /> <br /> dec->command_pipe = usb_sndbulkpipe(dec->udev, COMMAND_PIPE);<br /> dec->result_pipe = usb_rcvbulkpipe(dec->udev, RESULT_PIPE);<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/miropcm20-rds-core.c linux-2.6.15-rc5-mutex/drivers/media/radio/miropcm20-rds-core.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/miropcm20-rds-core.c 2004-06-18 13:41:41.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/miropcm20-rds-core.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -18,14 +18,14 @@<br /> #include <linux/string.h><br /> #include <linux/init.h><br /> #include <linux/slab.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <asm/io.h><br /> #include "../../../sound/oss/aci.h"<br /> #include "miropcm20-rds-core.h"<br /> <br /> #define DEBUG 0<br /> <br />-static struct semaphore aci_rds_sem;<br />+static struct mutex aci_rds_sem;<br /> <br /> #define RDS_DATASHIFT 2 /* Bit 2 */<br /> #define RDS_DATAMASK (1 << RDS_DATASHIFT)<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-aimslab.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-aimslab.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-aimslab.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-aimslab.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -35,7 +35,7 @@<br /> #include <asm/uaccess.h> /* copy to/from user */<br /> #include <linux/videodev.h> /* kernel radio structs */<br /> #include <linux/config.h> /* CONFIG_RADIO_RTRACK_PORT */<br />-#include <asm/semaphore.h> /* Lock for the I/O */<br />+#include <linux/semaphore.h> /* Lock for the I/O */<br /> <br /> #ifndef CONFIG_RADIO_RTRACK_PORT<br /> #define CONFIG_RADIO_RTRACK_PORT -1<br />@@ -43,7 +43,7 @@<br /> <br /> static int io = CONFIG_RADIO_RTRACK_PORT; <br /> static int radio_nr = -1;<br />-static struct semaphore lock;<br />+static struct mutex lock;<br /> <br /> struct rt_device<br /> {<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-aztech.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-aztech.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-aztech.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-aztech.c 2005-12-12 21:02:32.000000000 +0000<br />@@ -42,7 +42,7 @@<br /> static int io = CONFIG_RADIO_AZTECH_PORT; <br /> static int radio_nr = -1;<br /> static int radio_wait_time = 1000;<br />-static struct semaphore lock;<br />+static struct mutex lock;<br /> <br /> struct az_device<br /> {<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-maestro.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-maestro.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-maestro.c 2005-08-30 13:56:18.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-maestro.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -23,7 +23,7 @@<br /> #include <linux/sched.h><br /> #include <asm/io.h><br /> #include <asm/uaccess.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <linux/pci.h><br /> #include <linux/videodev.h><br /> <br />@@ -90,7 +90,7 @@ static struct radio_device<br /> muted, /* VIDEO_AUDIO_MUTE */<br /> stereo, /* VIDEO_TUNER_STEREO_ON */ <br /> tuned; /* signal strength (0 or 0xffff) */<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> } radio_unit = {0, 0, 0, 0, };<br /> <br /> static __u32 radio_bits_get(struct radio_device *dev)<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-maxiradio.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-maxiradio.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-maxiradio.c 2005-08-30 13:56:18.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-maxiradio.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -37,7 +37,7 @@<br /> #include <linux/sched.h><br /> #include <asm/io.h><br /> #include <asm/uaccess.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <linux/pci.h><br /> #include <linux/videodev.h><br /> <br />@@ -100,7 +100,7 @@ static struct radio_device<br /> <br /> unsigned long freq;<br /> <br />- struct semaphore lock;<br />+ struct mutex lock;<br /> } radio_unit = {0, 0, 0, 0, };<br /> <br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-sf16fmi.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-sf16fmi.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-sf16fmi.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-sf16fmi.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -24,7 +24,7 @@<br /> #include <linux/isapnp.h><br /> #include <asm/io.h> /* outb, outb_p */<br /> #include <asm/uaccess.h> /* copy to/from user */<br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> struct fmi_device<br /> {<br />@@ -37,7 +37,7 @@ struct fmi_device<br /> static int io = -1; <br /> static int radio_nr = -1;<br /> static struct pnp_dev *dev = NULL;<br />-static struct semaphore lock;<br />+static struct mutex lock;<br /> <br /> /* freq is in 1/16 kHz to internal number, hw precision is 50 kHz */<br /> /* It is only useful to give freq in intervall of 800 (=0.05Mhz),<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-sf16fmr2.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-sf16fmr2.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-sf16fmr2.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-sf16fmr2.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -19,9 +19,9 @@<br /> #include <asm/io.h> /* outb, outb_p */<br /> #include <asm/uaccess.h> /* copy to/from user */<br /> #include <linux/videodev.h> /* kernel radio structs */<br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br />-static struct semaphore lock;<br />+static struct mutex lock;<br /> <br /> #undef DEBUG<br /> //#define DEBUG 1<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-typhoon.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-typhoon.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-typhoon.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-typhoon.c 2005-12-12 21:04:13.000000000 +0000<br />@@ -59,7 +59,7 @@ struct typhoon_device {<br /> int muted;<br /> unsigned long curfreq;<br /> unsigned long mutefreq;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> };<br /> <br /> static void typhoon_setvol_generic(struct typhoon_device *dev, int vol);<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-zoltrix.c linux-2.6.15-rc5-mutex/drivers/media/radio/radio-zoltrix.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/radio/radio-zoltrix.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/radio/radio-zoltrix.c 2005-12-12 21:03:32.000000000 +0000<br />@@ -48,7 +48,7 @@ struct zol_device {<br /> unsigned long curfreq;<br /> int muted;<br /> unsigned int stereo;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> };<br /> <br /> static int zol_setvol(struct zol_device *dev, int vol)<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/arv.c linux-2.6.15-rc5-mutex/drivers/media/video/arv.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/arv.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/arv.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -32,7 +32,7 @@<br /> #include <linux/sched.h><br /> #include <linux/videodev.h><br /> <br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <asm/uaccess.h><br /> #include <asm/m32r.h><br /> #include <asm/io.h><br />@@ -117,7 +117,7 @@ struct ar_device {<br /> int width, height;<br /> int frame_bytes, line_bytes;<br /> wait_queue_head_t wait;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> };<br /> <br /> static int video_nr = -1; /* video device number (first free) */<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/bttvp.h linux-2.6.15-rc5-mutex/drivers/media/video/bttvp.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/bttvp.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/bttvp.h 2005-12-12 21:07:01.000000000 +0000<br />@@ -303,9 +303,9 @@ struct bttv {<br /> <br /> /* locking */<br /> spinlock_t s_lock;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> int resources;<br />- struct semaphore reslock;<br />+ struct mutex reslock;<br /> #ifdef VIDIOC_G_PRIORITY<br /> struct v4l2_prio_state prio;<br /> #endif<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/bw-qcam.c linux-2.6.15-rc5-mutex/drivers/media/video/bw-qcam.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/bw-qcam.c 2005-03-02 12:08:11.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/bw-qcam.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -73,7 +73,7 @@ OTHER DEALINGS IN THE SOFTWARE.<br /> #include <linux/parport.h><br /> #include <linux/sched.h><br /> #include <linux/videodev.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <asm/uaccess.h><br /> <br /> #include "bw-qcam.h"<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/bw-qcam.h linux-2.6.15-rc5-mutex/drivers/media/video/bw-qcam.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/bw-qcam.h 2004-06-18 13:41:41.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/bw-qcam.h 2005-12-12 21:05:53.000000000 +0000<br />@@ -55,7 +55,7 @@ struct qcam_device {<br /> struct video_device vdev;<br /> struct pardevice *pdev;<br /> struct parport *pport;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> int width, height;<br /> int bpp;<br /> int mode;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/cpia.c linux-2.6.15-rc5-mutex/drivers/media/video/cpia.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/cpia.c 2005-11-01 13:19:08.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/cpia.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -39,7 +39,7 @@<br /> #include <linux/pagemap.h><br /> #include <linux/delay.h><br /> #include <asm/io.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #ifdef CONFIG_KMOD<br /> #include <linux/kmod.h><br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/cpia.h linux-2.6.15-rc5-mutex/drivers/media/video/cpia.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/cpia.h 2004-06-18 13:41:41.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/cpia.h 2005-12-12 21:06:15.000000000 +0000<br />@@ -246,7 +246,7 @@ enum v4l_camstates {<br /> struct cam_data {<br /> struct list_head cam_data_list;<br /> <br />- struct semaphore busy_lock; /* guard against SMP multithreading */<br />+ struct mutex busy_lock; /* guard against SMP multithreading */<br /> struct cpia_camera_ops *ops; /* lowlevel driver operations */<br /> void *lowlevel_data; /* private data for lowlevel driver */<br /> u8 *raw_image; /* buffer for raw image data */<br />@@ -261,7 +261,7 @@ struct cam_data {<br /> u8 mainsFreq; /* for flicker control */<br /> <br /> /* proc interface */<br />- struct semaphore param_lock; /* params lock for this camera */<br />+ struct mutex param_lock; /* params lock for this camera */<br /> struct cam_params params; /* camera settings */<br /> struct proc_dir_entry *proc_entry; /* /proc/cpia/videoX */<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/c-qcam.c linux-2.6.15-rc5-mutex/drivers/media/video/c-qcam.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/c-qcam.c 2005-06-22 13:51:52.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/c-qcam.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -34,7 +34,7 @@<br /> #include <linux/parport.h><br /> #include <linux/sched.h><br /> #include <linux/videodev.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <asm/uaccess.h><br /> <br /> struct qcam_device {<br />@@ -47,7 +47,7 @@ struct qcam_device {<br /> int contrast, brightness, whitebal;<br /> int top, left;<br /> unsigned int bidirectional;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> };<br /> <br /> /* cameras maximum */<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/cx88/cx88.h linux-2.6.15-rc5-mutex/drivers/media/video/cx88/cx88.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/cx88/cx88.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/cx88/cx88.h 2005-12-12 21:05:06.000000000 +0000<br />@@ -297,7 +297,7 @@ struct cx88_core {<br /> /* IR remote control state */<br /> struct cx88_IR *ir;<br /> <br />- struct semaphore lock;<br />+ struct mutex lock;<br /> <br /> /* various v4l controls */<br /> u32 freq;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/em28xx/em28xx.h linux-2.6.15-rc5-mutex/drivers/media/video/em28xx/em28xx.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/em28xx/em28xx.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/em28xx/em28xx.h 2005-12-12 21:45:51.000000000 +0000<br />@@ -254,7 +254,7 @@ struct em28xx {<br /> enum em28xx_stream_state stream;<br /> enum em28xx_io_method io;<br /> /* locks */<br />- struct semaphore lock, fileop_lock;<br />+ struct mutex mutex, mutex_lock;<br /> spinlock_t queue_lock;<br /> struct list_head inqueue, outqueue;<br /> wait_queue_head_t open, wait_frame, wait_stream;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/ir-kbd-i2c.c linux-2.6.15-rc5-mutex/drivers/media/video/ir-kbd-i2c.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/ir-kbd-i2c.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/ir-kbd-i2c.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -39,7 +39,7 @@<br /> #include <linux/slab.h><br /> #include <linux/i2c.h><br /> #include <linux/workqueue.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <media/ir-common.h><br /> #include <media/ir-kbd-i2c.h><br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/meye.h linux-2.6.15-rc5-mutex/drivers/media/video/meye.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/meye.h 2005-01-04 11:13:16.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/meye.h 2005-12-12 21:05:41.000000000 +0000<br />@@ -301,7 +301,7 @@ struct meye {<br /> /* list of buffers */<br /> struct meye_grab_buffer grab_buffer[MEYE_MAX_BUFNBRS];<br /> int vma_use_count[MEYE_MAX_BUFNBRS]; /* mmap count */<br />- struct semaphore lock; /* semaphore for open/mmap... */<br />+ struct mutex lock; /* semaphore for open/mmap... */<br /> struct kfifo *grabq; /* queue for buffers to be grabbed */<br /> spinlock_t grabq_lock; /* lock protecting the queue */<br /> struct kfifo *doneq; /* queue for grabbed buffers */<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/msp3400.c linux-2.6.15-rc5-mutex/drivers/media/video/msp3400.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/msp3400.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/msp3400.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -50,7 +50,7 @@<br /> #include <linux/smp_lock.h><br /> #include <linux/kthread.h><br /> #include <linux/suspend.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <asm/pgtable.h><br /> <br /> #include <media/audiochip.h><br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/planb.c linux-2.6.15-rc5-mutex/drivers/media/video/planb.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/planb.c 2005-06-22 13:51:52.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/planb.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -48,7 +48,7 @@<br /> #include <asm/pgtable.h><br /> #include <asm/page.h><br /> #include <asm/irq.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #include "planb.h"<br /> #include "saa7196.h"<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/planb.h linux-2.6.15-rc5-mutex/drivers/media/video/planb.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/planb.h 2004-06-18 13:41:41.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/planb.h 2005-12-12 21:05:11.000000000 +0000<br />@@ -174,7 +174,7 @@ struct planb {<br /> int user;<br /> unsigned int tab_size;<br /> int maxlines;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> unsigned int irq; /* interrupt number */<br /> volatile unsigned int intr_mask;<br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/pms.c linux-2.6.15-rc5-mutex/drivers/media/video/pms.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/pms.c 2005-03-02 12:08:12.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/pms.c 2005-12-12 21:05:35.000000000 +0000<br />@@ -44,7 +44,7 @@ struct pms_device<br /> struct video_picture picture;<br /> int height;<br /> int width;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> };<br /> <br /> struct i2c_info<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/saa5246a.c linux-2.6.15-rc5-mutex/drivers/media/video/saa5246a.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/saa5246a.c 2005-08-30 13:56:18.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/saa5246a.c 2005-12-12 21:07:15.000000000 +0000<br />@@ -57,7 +57,7 @@ struct saa5246a_device<br /> u8 pgbuf[NUM_DAUS][VTX_VIRTUALSIZE];<br /> int is_searching[NUM_DAUS];<br /> struct i2c_client *client;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> };<br /> <br /> static struct video_device saa_template; /* Declared near bottom */<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/saa5249.c linux-2.6.15-rc5-mutex/drivers/media/video/saa5249.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/saa5249.c 2005-08-30 13:56:18.000000000 +0100<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/saa5249.c 2005-12-12 21:07:26.000000000 +0000<br />@@ -105,7 +105,7 @@ struct saa5249_device<br /> int disp_mode;<br /> int virtual_mode;<br /> struct i2c_client *client;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> };<br /> <br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/saa7134/saa7134.h linux-2.6.15-rc5-mutex/drivers/media/video/saa7134/saa7134.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/saa7134/saa7134.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/saa7134/saa7134.h 2005-12-12 21:06:33.000000000 +0000<br />@@ -358,7 +358,7 @@ struct saa7134_fh {<br /> <br /> /* dmasound dsp status */<br /> struct saa7134_dmasound {<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> int minor_mixer;<br /> int minor_dsp;<br /> unsigned int users_dsp;<br />@@ -422,7 +422,7 @@ struct saa7134_mpeg_ops {<br /> /* global device status */<br /> struct saa7134_dev {<br /> struct list_head devlist;<br />- struct semaphore lock;<br />+ struct mutex lock;<br /> spinlock_t slock;<br /> #ifdef VIDIOC_G_PRIORITY<br /> struct v4l2_prio_state prio;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/tvmixer.c linux-2.6.15-rc5-mutex/drivers/media/video/tvmixer.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/tvmixer.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/tvmixer.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -16,8 +16,8 @@<br /> #include <linux/kdev_t.h><br /> #include <linux/sound.h><br /> #include <linux/soundcard.h><br />+#include <linux/semaphore.h><br /> <br />-#include <asm/semaphore.h><br /> #include <asm/uaccess.h><br /> <br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/videodev.c linux-2.6.15-rc5-mutex/drivers/media/video/videodev.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/videodev.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/videodev.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -29,7 +29,7 @@<br /> #include <linux/devfs_fs_kernel.h><br /> #include <asm/uaccess.h><br /> #include <asm/system.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> <br /> #include <linux/videodev.h><br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/vino.c linux-2.6.15-rc5-mutex/drivers/media/video/vino.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/vino.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/vino.c 2005-12-12 21:06:48.000000000 +0000<br />@@ -245,7 +245,7 @@ struct vino_framebuffer_queue {<br /> struct vino_framebuffer *buffer[VINO_FRAMEBUFFER_COUNT_MAX];<br /> <br /> spinlock_t queue_lock;<br />- struct semaphore queue_sem;<br />+ struct mutex queue_sem;<br /> wait_queue_head_t frame_wait_queue;<br /> };<br /> <br />@@ -283,7 +283,7 @@ struct vino_channel_settings {<br /> /* the driver is currently processing the queue */<br /> int capturing;<br /> <br />- struct semaphore sem;<br />+ struct mutex sem;<br /> spinlock_t capture_lock;<br /> <br /> unsigned int users;<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/zoran.h linux-2.6.15-rc5-mutex/drivers/media/video/zoran.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/media/video/zoran.h 2005-01-04 11:13:17.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/media/video/zoran.h 2005-12-12 21:07:22.000000000 +0000<br />@@ -395,7 +395,7 @@ struct zoran {<br /> struct videocodec *codec; /* video codec */<br /> struct videocodec *vfe; /* video front end */<br /> <br />- struct semaphore resource_lock; /* prevent evil stuff */<br />+ struct mutex resource_lock; /* prevent evil stuff */<br /> <br /> u8 initialized; /* flag if zoran has been correctly initalized */<br /> int user; /* number of current users */<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/message/fusion/mptbase.h linux-2.6.15-rc5-mutex/drivers/message/fusion/mptbase.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/message/fusion/mptbase.h 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/message/fusion/mptbase.h 2005-12-12 20:08:51.000000000 +0000<br />@@ -417,7 +417,7 @@ typedef struct _MPT_IOCTL {<br /> u8 status; /* current command status */<br /> u8 reset; /* 1 if bus reset allowed */<br /> u8 target; /* target for reset */<br />- struct semaphore sem_ioc;<br />+ struct mutex sem_ioc;<br /> } MPT_IOCTL;<br /> <br /> #define MPT_SAS_MGMT_STATUS_RF_VALID 0x02 /* The Reply Frame is VALID */<br />@@ -425,7 +425,7 @@ typedef struct _MPT_IOCTL {<br /> #define MPT_SAS_MGMT_STATUS_TM_FAILED 0x40 /* User TM request failed */<br /> <br /> typedef struct _MPT_SAS_MGMT {<br />- struct semaphore mutex;<br />+ struct mutex mutex;<br /> struct completion done;<br /> u8 reply[MPT_DEFAULT_FRAME_SIZE]; /* reply frame data */<br /> u8 status; /* current command status */<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/message/fusion/mptctl.c linux-2.6.15-rc5-mutex/drivers/message/fusion/mptctl.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/message/fusion/mptctl.c 2005-12-08 16:23:41.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/message/fusion/mptctl.c 2005-12-12 20:24:32.000000000 +0000<br />@@ -2745,7 +2745,7 @@ mptctl_probe(struct pci_dev *pdev, const<br /> memset(mem, 0, sz);<br /> ioc->ioctl = (MPT_IOCTL *) mem;<br /> ioc->ioctl->ioc = ioc;<br />- sema_init(&ioc->ioctl->sem_ioc, 1);<br />+ init_MUTEX(&ioc->ioctl->sem_ioc);<br /> return 0;<br /> <br /> out_fail:<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/mfd/ucb1x00-core.c linux-2.6.15-rc5-mutex/drivers/mfd/ucb1x00-core.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/mfd/ucb1x00-core.c 2005-11-01 13:19:09.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/mfd/ucb1x00-core.c 2005-12-12 20:32:38.000000000 +0000<br />@@ -135,7 +135,7 @@ unsigned int ucb1x00_io_read(struct ucb1<br /> */<br /> void ucb1x00_adc_enable(struct ucb1x00 *ucb)<br /> {<br />- down(&ucb->adc_sem);<br />+ down_sem(&ucb->adc_sem);<br /> <br /> ucb->adc_cr |= UCB_ADC_ENA;<br /> <br />@@ -193,7 +193,7 @@ void ucb1x00_adc_disable(struct ucb1x00 <br /> ucb1x00_reg_write(ucb, UCB_ADC_CR, ucb->adc_cr);<br /> ucb1x00_disable(ucb);<br /> <br />- up(&ucb->adc_sem);<br />+ up_sem(&ucb->adc_sem);<br /> }<br /> <br /> /*<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/mfd/ucb1x00-ts.c linux-2.6.15-rc5-mutex/drivers/mfd/ucb1x00-ts.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/mfd/ucb1x00-ts.c 2005-12-08 16:23:42.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/mfd/ucb1x00-ts.c 2005-12-12 22:12:50.000000000 +0000<br />@@ -35,7 +35,7 @@<br /> #include <linux/delay.h><br /> <br /> #include <asm/dma.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <asm/arch/collie.h><br /> #include <asm/mach-types.h><br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/mmc/mmc_queue.h linux-2.6.15-rc5-mutex/drivers/mmc/mmc_queue.h<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/mmc/mmc_queue.h 2005-01-04 11:13:17.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/mmc/mmc_queue.h 2005-12-12 20:58:14.000000000 +0000<br />@@ -8,7 +8,7 @@ struct mmc_queue {<br /> struct mmc_card *card;<br /> struct completion thread_complete;<br /> wait_queue_head_t thread_wq;<br />- struct semaphore thread_sem;<br />+ struct mutex thread_sem;<br /> unsigned int flags;<br /> struct request *req;<br /> int (*prep_fn)(struct mmc_queue *, struct request *);<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/devices/blkmtd.c linux-2.6.15-rc5-mutex/drivers/mtd/devices/blkmtd.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/devices/blkmtd.c 2005-12-08 16:23:42.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/mtd/devices/blkmtd.c 2005-12-12 21:19:07.000000000 +0000<br />@@ -46,7 +46,7 @@ struct blkmtd_dev {<br /> struct list_head list;<br /> struct block_device *blkdev;<br /> struct mtd_info mtd_info;<br />- struct semaphore wrbuf_mutex;<br />+ struct mutex wrbuf_mutex;<br /> };<br /> <br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/devices/block2mtd.c linux-2.6.15-rc5-mutex/drivers/mtd/devices/block2mtd.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/devices/block2mtd.c 2005-12-08 16:23:42.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/mtd/devices/block2mtd.c 2005-12-12 21:19:09.000000000 +0000<br />@@ -31,7 +31,7 @@ struct block2mtd_dev {<br /> struct list_head list;<br /> struct block_device *blkdev;<br /> struct mtd_info mtd;<br />- struct semaphore write_mutex;<br />+ struct mutex write_mutex;<br /> };<br /> <br /> <br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/mtd_blkdevs.c linux-2.6.15-rc5-mutex/drivers/mtd/mtd_blkdevs.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/mtd_blkdevs.c 2005-12-08 16:23:42.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/mtd/mtd_blkdevs.c 2005-12-12 22:08:48.000000000 +0000<br />@@ -19,12 +19,12 @@<br /> #include <linux/spinlock.h><br /> #include <linux/hdreg.h><br /> #include <linux/init.h><br />-#include <asm/semaphore.h><br />+#include <linux/semaphore.h><br /> #include <asm/uaccess.h><br /> <br /> static LIST_HEAD(blktrans_majors);<br /> <br />-extern struct semaphore mtd_table_mutex;<br />+extern struct mutex mtd_table_mutex;<br /> extern struct mtd_info *mtd_table[];<br /> <br /> struct mtd_blkcore_priv {<br />diff -uNrp /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/mtdblock.c linux-2.6.15-rc5-mutex/drivers/mtd/mtdblock.c<br />--- /warthog/kernels/linux-2.6.15-rc5/drivers/mtd/mtdblock.c 2005-12-08 16:23:42.000000000 +0000<br />+++ linux-2.6.15-rc5-mutex/drivers/mtd/mtdblock.c 2005-12-12 21:19:16.000000000 +0000<br />@@ -23,7 +23,7 @@<br /> static struct mtdblk_dev {<br /> struct mtd_info *mtd;<br /> int count;<br />- struct semaphore cache_sem;<br />+ struct mutex cache_sem;<br /> unsigned char *cache_data;<br /> unsigned long cache_offset;<br /> unsigned int cache_size;<br />-<br />To unsubscribe from this list: send the line "unsubscribe linux-kernel" in<br />the body of a message to majordomo@vger.kernel.org<br />More majordomo info at <a href="http://vger.kernel.org/majordomo-info.html">http://vger.kernel.org/majordomo-info.html</a><br />Please read the FAQ at <a href="http://www.tux.org/lkml/">http://www.tux.org/lkml/</a><br /></pre></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerr.gif" width="32" height="32" alt="\" /></td></tr><tr><td align="right" valign="bottom"> 聽 </td></tr><tr><td align="right" valign="bottom">聽</td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerl.gif" width="32" height="32" alt="\" /></td><td class="c">聽</td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerr.gif" width="32" height="32" alt="/" /></td></tr><tr><td align="right" valign="top" colspan="2"> 聽 </td><td class="lm">Last update: 2005-12-13 00:55 聽聽 [from the cache]<br />漏2003-2020 <a href="http://blog.jasper.es/"><span itemprop="editor">Jasper Spaans</span></a>|hosted at <a href="https://www.digitalocean.com/?refcode=9a8e99d24cf9">Digital Ocean</a> and my Meterkast|<a href="http://blog.jasper.es/categories.html#lkml-ref">Read the blog</a></td><td>聽</td></tr></table><script language="javascript" src="/js/styleswitcher.js" type="text/javascript"></script></body></html>