From: William Hubbs Date: Mon, 13 May 2013 18:31:39 +0000 (-0500) Subject: staging: speakup: soft: remove custom locking macros X-Git-Tag: next-20130521~23^2~129 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=89c9df1b7974133c9402c2865da937d81e4b2232;p=karo-tx-linux.git staging: speakup: soft: remove custom locking macros Signed-off-by: William Hubbs Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/speakup/speakup_soft.c b/drivers/staging/speakup/speakup_soft.c index e2f5c81e7548..83e08455cd31 100644 --- a/drivers/staging/speakup/speakup_soft.c +++ b/drivers/staging/speakup/speakup_soft.c @@ -179,23 +179,23 @@ static int softsynth_open(struct inode *inode, struct file *fp) unsigned long flags; /*if ((fp->f_flags & O_ACCMODE) != O_RDONLY) */ /* return -EPERM; */ - spk_lock(flags); + spin_lock_irqsave(&speakup_info.spinlock, flags); if (synth_soft.alive) { - spk_unlock(flags); + spin_unlock_irqrestore(&speakup_info.spinlock, flags); return -EBUSY; } synth_soft.alive = 1; - spk_unlock(flags); + spin_unlock_irqrestore(&speakup_info.spinlock, flags); return 0; } static int softsynth_close(struct inode *inode, struct file *fp) { unsigned long flags; - spk_lock(flags); + spin_lock_irqsave(&speakup_info.spinlock, flags); synth_soft.alive = 0; init_pos = 0; - spk_unlock(flags); + spin_unlock_irqrestore(&speakup_info.spinlock, flags); /* Make sure we let applications go before leaving */ speakup_start_ttys(); return 0; @@ -212,12 +212,12 @@ static ssize_t softsynth_read(struct file *fp, char *buf, size_t count, unsigned long flags; DEFINE_WAIT(wait); - spk_lock(flags); + spin_lock_irqsave(&speakup_info.spinlock, flags); while (1) { prepare_to_wait(&speakup_event, &wait, TASK_INTERRUPTIBLE); if (!synth_buffer_empty() || speakup_info.flushing) break; - spk_unlock(flags); + spin_unlock_irqrestore(&speakup_info.spinlock, flags); if (fp->f_flags & O_NONBLOCK) { finish_wait(&speakup_event, &wait); return -EAGAIN; @@ -227,7 +227,7 @@ static ssize_t softsynth_read(struct file *fp, char *buf, size_t count, return -ERESTARTSYS; } schedule(); - spk_lock(flags); + spin_lock_irqsave(&speakup_info.spinlock, flags); } finish_wait(&speakup_event, &wait); @@ -244,16 +244,16 @@ static ssize_t softsynth_read(struct file *fp, char *buf, size_t count, } else { ch = synth_buffer_getc(); } - spk_unlock(flags); + spin_unlock_irqrestore(&speakup_info.spinlock, flags); if (copy_to_user(cp, &ch, 1)) return -EFAULT; - spk_lock(flags); + spin_lock_irqsave(&speakup_info.spinlock, flags); chars_sent++; cp++; } *pos += chars_sent; empty = synth_buffer_empty(); - spk_unlock(flags); + spin_unlock_irqrestore(&speakup_info.spinlock, flags); if (empty) { speakup_start_ttys(); *pos = 0; @@ -285,10 +285,10 @@ static unsigned int softsynth_poll(struct file *fp, int ret = 0; poll_wait(fp, &speakup_event, wait); - spk_lock(flags); + spin_lock_irqsave(&speakup_info.spinlock, flags); if (!synth_buffer_empty() || speakup_info.flushing) ret = POLLIN | POLLRDNORM; - spk_unlock(flags); + spin_unlock_irqrestore(&speakup_info.spinlock, flags); return ret; }