aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390
diff options
context:
space:
mode:
authorStefan Weinhuber <wein@de.ibm.com>2009-02-11 10:37:31 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2009-02-11 10:37:40 +0100
commit48cae885d5a896030588978f503c73c5ed5e62b1 (patch)
tree52668ad63447cd3395181295f8795c580b77d99e /arch/s390
parent[S390] dasd: bus_id -> dev_name() conversion. (diff)
downloadlinux-dev-48cae885d5a896030588978f503c73c5ed5e62b1.tar.xz
linux-dev-48cae885d5a896030588978f503c73c5ed5e62b1.zip
[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 'arch/s390')
0 files changed, 0 insertions, 0 deletions