linux/drivers/s390/block
Stefan Weinhuber 48cae885d5 [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>
2009-02-11 10:37:40 +01:00
..
dasd_3990_erp.c
dasd_alias.c
dasd_devmap.c [S390] dasd: bus_id -> dev_name() conversion. 2009-02-11 10:37:40 +01:00
dasd_diag.c [S390] dasd: add device attribute to disable blocking on lost paths 2009-01-09 12:15:05 +01:00
dasd_diag.h
dasd_eckd.c [S390] dasd: add device attribute to disable blocking on lost paths 2009-01-09 12:15:05 +01:00
dasd_eckd.h
dasd_eer.c
dasd_erp.c
dasd_fba.c [S390] dasd: add device attribute to disable blocking on lost paths 2009-01-09 12:15:05 +01:00
dasd_fba.h
dasd_genhd.c
dasd_int.h
dasd_ioctl.c
dasd_proc.c
dasd.c [S390] dasd: fix race in dasd timer handling 2009-02-11 10:37:40 +01:00
dcssblk.c
Kconfig
Makefile
xpram.c