projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
5dcb34b
)
serial: core: replace current->state by __set_current_state()
author
Fabian Frederick
<fabf@skynet.be>
Fri, 20 Feb 2015 18:12:57 +0000
(19:12 +0100)
committer
Greg Kroah-Hartman
<gregkh@linuxfoundation.org>
Sat, 7 Mar 2015 02:08:42 +0000
(
03:08
+0100)
Use helper functions to access current->state.
Direct assignments are prone to races and therefore buggy.
Thanks to Peter Zijlstra for the exact definition of the problem.
Suggested-By: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/serial_core.c
patch
|
blob
|
history
diff --git
a/drivers/tty/serial/serial_core.c
b/drivers/tty/serial/serial_core.c
index 6a1055ae343727e964cbb6af44909b42cd526afb..63d29473c703ddfeedce7b24137fe234981f01ff 100644
(file)
--- a/
drivers/tty/serial/serial_core.c
+++ b/
drivers/tty/serial/serial_core.c
@@
-1118,8
+1118,7
@@
uart_wait_modem_status(struct uart_state *state, unsigned long arg)
cprev = cnow;
}
-
- current->state = TASK_RUNNING;
+ __set_current_state(TASK_RUNNING);
remove_wait_queue(&port->delta_msr_wait, &wait);
return ret;