OSDN Git Service

fakekey: Simplify speakup_fake_key_pressed through this_cpu_ops
authorChristoph Lameter <cl@linux.com>
Mon, 6 Dec 2010 17:16:26 +0000 (11:16 -0600)
committerTejun Heo <tj@kernel.org>
Fri, 17 Dec 2010 14:07:19 +0000 (15:07 +0100)
The whole function can be expressed as a simple this_cpu_read() operation.
The function overhead is now likely multiple times that of the single
instruction that is executed in it.

Sedat: fixed compile failure caused by an extra ')'.

Cc: William Hubbs <w.d.hubbs@gmail.com>
Cc: Sedat Dilek <sedat.dilek@gmail.com>
Acked-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Christoph Lameter <cl@linux.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/staging/speakup/fakekey.c

index bf4ec68..1b34a87 100644 (file)
@@ -95,10 +95,5 @@ void speakup_fake_down_arrow(void)
         */
 bool speakup_fake_key_pressed(void)
 {
-       bool is_pressed;
-
-       is_pressed = get_cpu_var(reporting_keystroke);
-       put_cpu_var(reporting_keystroke);
-
-       return is_pressed;
+       return this_cpu_read(reporting_keystroke);
 }