2007-12-29 01:02:26

by Dave Young

[permalink] [raw]
Subject: [PATCH 03/12] firewire : Use mutex instead of semaphore in driver core

Signed-off-by: Dave Young <[email protected]>

---
drivers/firewire/fw-device.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff -upr linux/drivers/firewire/fw-device.c linux.new/drivers/firewire/fw-device.c
--- linux/drivers/firewire/fw-device.c 2007-12-28 10:02:38.000000000 +0800
+++ linux.new/drivers/firewire/fw-device.c 2007-12-28 10:05:00.000000000 +0800
@@ -26,7 +26,7 @@
#include <linux/delay.h>
#include <linux/idr.h>
#include <linux/rwsem.h>
-#include <asm/semaphore.h>
+#include <linux/mutex.h>
#include <linux/ctype.h>
#include "fw-transaction.h"
#include "fw-topology.h"
@@ -731,9 +731,9 @@ static int update_unit(struct device *de
struct fw_driver *driver = (struct fw_driver *)dev->driver;

if (is_fw_unit(dev) && driver != NULL && driver->update != NULL) {
- down(&dev->sem);
+ mutex_lock(&dev->mutex);
driver->update(unit);
- up(&dev->sem);
+ mutex_unlock(&dev->mutex);
}

return 0;


2007-12-29 11:43:21

by Stefan Richter

[permalink] [raw]
Subject: Re: [PATCH 03/12] firewire : Use mutex instead of semaphore in driver core

Dave Young wrote:
> --- linux/drivers/firewire/fw-device.c 2007-12-28 10:02:38.000000000 +0800
> +++ linux.new/drivers/firewire/fw-device.c 2007-12-28 10:05:00.000000000 +0800
> @@ -26,7 +26,7 @@
> #include <linux/delay.h>
> #include <linux/idr.h>
> #include <linux/rwsem.h>
> -#include <asm/semaphore.h>
> +#include <linux/mutex.h>
> #include <linux/ctype.h>
> #include "fw-transaction.h"
> #include "fw-topology.h"
> @@ -731,9 +731,9 @@ static int update_unit(struct device *de
> struct fw_driver *driver = (struct fw_driver *)dev->driver;
>
> if (is_fw_unit(dev) && driver != NULL && driver->update != NULL) {
> - down(&dev->sem);
> + mutex_lock(&dev->mutex);
> driver->update(unit);
> - up(&dev->sem);
> + mutex_unlock(&dev->mutex);
> }
>
> return 0;

ACK to this part of the series.
--
Stefan Richter
-=====-=-=== ==-- ===-=
http://arcgraph.de/sr/