diff options
author | Stefan Weinhuber <wein@de.ibm.com> | 2009-02-11 09:37:31 (GMT) |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-02-11 09:37:40 (GMT) |
commit | 48cae885d5a896030588978f503c73c5ed5e62b1 (patch) | |
tree | 52668ad63447cd3395181295f8795c580b77d99e /fs/stack.c | |
parent | ca0b4b7d2cb57a2e24d7e48ce9b411b9baa3bf63 (diff) | |
download | linux-fsl-qoriq-48cae885d5a896030588978f503c73c5ed5e62b1.tar.xz |
[S390] dasd: fix race in dasd timer handling
In dasd_device_set_timer and dasd_block_set_timer we interpret the
return value of mod_timer in a wrong way. If the timer expires in
the small window between our check of timer_pending and the call to
mod_timer, then the timer will be set, mod_timer returns zero and
we will call add_timer for a timer that is already pending.
As del_timer and mod_timer do all the necessary checking themselves,
we can simplify our code and remove the race a the same time.
Signed-off-by: Stefan Weinhuber <wein@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'fs/stack.c')
0 files changed, 0 insertions, 0 deletions