From: Matthias Kaehlcke Date: Fri, 4 May 2007 03:15:14 +0000 (-0700) Subject: [WATCHDOG] use mutex instead of semaphore in Berkshire USB-PC Watchdog driver X-Git-Tag: v2.6.22-rc1~105^2~4 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9f7afa6b3405a2ceb9403153357564a93f14cde8;p=linux-2.6 [WATCHDOG] use mutex instead of semaphore in Berkshire USB-PC Watchdog driver The Berkshire USB-PC Watchdog driver uses a semaphore as mutex. Use the mutex API instead of the (binary) semaphore. Signed-off-by: Matthias Kaehlcke Signed-off-by: Wim Van Sebroeck Cc: Greg KH Signed-off-by: Andrew Morton --- diff --git a/drivers/char/watchdog/pcwd_usb.c b/drivers/char/watchdog/pcwd_usb.c index 31037f9c9f..1e7a6719d5 100644 --- a/drivers/char/watchdog/pcwd_usb.c +++ b/drivers/char/watchdog/pcwd_usb.c @@ -146,7 +146,7 @@ struct usb_pcwd_private { atomic_t cmd_received; /* true if we received a report after a command */ int exists; /* Wether or not the device exists */ - struct semaphore sem; /* locks this structure */ + struct mutex mtx; /* locks this structure */ }; static struct usb_pcwd_private *usb_pcwd_device; @@ -635,7 +635,7 @@ static int usb_pcwd_probe(struct usb_interface *interface, const struct usb_devi usb_pcwd_device = usb_pcwd; - init_MUTEX (&usb_pcwd->sem); + mutex_init(&usb_pcwd->mtx); usb_pcwd->udev = udev; usb_pcwd->interface = interface; usb_pcwd->interface_number = iface_desc->desc.bInterfaceNumber; @@ -763,7 +763,7 @@ static void usb_pcwd_disconnect(struct usb_interface *interface) usb_pcwd = usb_get_intfdata (interface); usb_set_intfdata (interface, NULL); - down (&usb_pcwd->sem); + mutex_lock(&usb_pcwd->mtx); /* Stop the timer before we leave */ if (!nowayout) @@ -777,7 +777,7 @@ static void usb_pcwd_disconnect(struct usb_interface *interface) misc_deregister(&usb_pcwd_temperature_miscdev); unregister_reboot_notifier(&usb_pcwd_notifier); - up (&usb_pcwd->sem); + mutex_unlock(&usb_pcwd->mtx); /* Delete the USB PCWD device */ usb_pcwd_delete(usb_pcwd);