Generic Mutex Subsystem, sx8-sem2completions.patch
PATCH 11/15 Generic Mutex Subsystem, sx8-sem2completions.patch
change SX8 semaphores to completions.
From: Steven Rostedt <[email protected]>
Signed-off-by Ingo Molnar <[email protected]>
----
drivers/block/sx8.c | 11 ++++++----- 1 files changed, 6 insertions(+), 5 deletions(-)
drivers/block/sx8.c +6 -5
@@ -27,6 +27,7 @@#include <linux/time.h> #include <linux/hdreg.h> #include <linux/dma-mapping.h> +#include <linux/completion.h> #include <asm/io.h> #include <asm/semaphore.h> #include <asm/uaccess.h>
@@ -303,7 +304,7 @@ struct carm_host {struct work_struct fsm_task; -struct semaphore probe_sem; +struct completion probe_comp; };struct carm_response {
@@ -1365,7 +1366,7 @@ static void carm_fsm_task (void *_data) }case HST_PROBE_FINISHED : -up (&host->probe_sem); +complete (&host->probe_comp);break ;case HST_ERROR :
@@ -1641,7 +1642,7 @@ static int carm_init_one (struct pci_dev host->flags = pci_dac ?FL_DAC :0 ;spin_lock_init (&host->lock);INIT_WORK (&host->fsm_task, carm_fsm_task, host); -init_MUTEX_LOCKED (&host->probe_sem); +init_completion (&host->probe_comp);for (i =0 ; i <ARRAY_SIZE (host->req); i++) host->req[i].tag = i;
@@ -1710,8 +1711,8 @@ static int carm_init_one (struct pci_devif (rc) goto err_out_free_irq; -DPRINTK ("waiting for probe_sem\n" ); -down (&host->probe_sem); +DPRINTK ("waiting for probe_comp\n" ); +wait_for_completion (&host->probe_comp); printk(KERN_INFO "%s: pci %s, ports %d, io %lx, irq %u, major %d\n", host->name, pci_name(pdev), (int) CARM_MAX_PORTS,