Thread (79 messages) 79 messages, 7 authors, 2012-03-18
STALE5202d

[PATCH 10/68] ALPHA: srmcons, use timer functions

From: Jiri Slaby <hidden>
Date: 2012-03-05 14:09:55
Also in: lkml
Subsystem: alpha port, the rest · Maintainers: Richard Henderson, Matt Turner, Magnus Lindholm, Linus Torvalds

It makes the code more readable. We move the setup to the allocation
location because we need to initialize timers only once.

Signed-off-by: Jiri Slaby <redacted>
Cc: Richard Henderson <redacted>
Cc: Ivan Kokshaysky <redacted>
Cc: Matt Turner <mattst88@gmail.com>
---
 arch/alpha/kernel/srmcons.c |   14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/arch/alpha/kernel/srmcons.c b/arch/alpha/kernel/srmcons.c
index 783f4e5..f1fdf17 100644
--- a/arch/alpha/kernel/srmcons.c
+++ b/arch/alpha/kernel/srmcons.c
@@ -79,10 +79,8 @@ srmcons_receive_chars(unsigned long data)
 	} 
 
 	spin_lock(&srmconsp->lock);
-	if (srmconsp->tty) {
-		srmconsp->timer.expires = jiffies + incr;
-		add_timer(&srmconsp->timer);
-	}
+	if (srmconsp->tty)
+		mod_timer(&srmconsp->timer, jiffies + incr);
 	spin_unlock(&srmconsp->lock);
 
 	local_irq_restore(flags);
@@ -172,7 +170,8 @@ srmcons_get_private_struct(struct srmcons_private **ps)
 		else {
 			srmconsp->tty = NULL;
 			spin_lock_init(&srmconsp->lock);
-			init_timer(&srmconsp->timer);
+			setup_timer(&srmconsp->timer, srmcons_receive_chars,
+					(unsigned long)srmconsp);
 		}
 
 		spin_unlock_irqrestore(&srmconsp_lock, flags);
@@ -199,10 +198,7 @@ srmcons_open(struct tty_struct *tty, struct file *filp)
 		tty->driver_data = srmconsp;
 
 		srmconsp->tty = tty;
-		srmconsp->timer.function = srmcons_receive_chars;
-		srmconsp->timer.data = (unsigned long)srmconsp;
-		srmconsp->timer.expires = jiffies + 10;
-		add_timer(&srmconsp->timer);
+		mod_timer(&srmconsp->timer, jiffies + 10);
 	}
 
 	spin_unlock_irqrestore(&srmconsp->lock, flags);
-- 
1.7.9.2

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help