kernel-fxtec-pro1x/drivers/s390/block
Stefan Weinhuber 1c1e093cbf [S390] dasd: fix race between tasklet and dasd_sleep_on
The various dasd_sleep_on functions use a global wait queue when
waiting for a cqr. The wait condition checks the status and devlist
fields of the cqr to determine if it is safe to continue. This
evaluation may return true, although the tasklet has not finished
processing of the cqr and the callback function has not been called
yet. When the callback is finally called, the data in the cqr may
already be invalid. The sleep_on wait condition needs a safe way to
determine if the tasklet has finished processing. Use the
callback_data field of the cqr to store a token, which is set by
the callback function itself.

Cc: <stable@kernel.org>
Signed-off-by: Stefan Weinhuber <wein@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2010-05-12 09:32:26 +02:00
..
dasd.c [S390] dasd: fix race between tasklet and dasd_sleep_on 2010-05-12 09:32:26 +02:00
dasd_3990_erp.c [S390] dasd: fix endless loop in erp 2010-04-22 17:17:19 +02:00
dasd_alias.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dasd_devmap.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dasd_diag.c [S390] dasd: automatic recognition of read-only devices 2010-03-08 12:26:27 +01:00
dasd_diag.h
dasd_eckd.c [S390] dasd: check tsb validity 2010-03-24 11:49:53 +01:00
dasd_eckd.h [S390] dasd: let device initialization wait for LCU setup 2009-12-07 12:51:35 +01:00
dasd_eer.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dasd_erp.c [S390] dasd: fix message naming 2009-09-11 10:29:42 +02:00
dasd_fba.c [S390] dasd: automatic recognition of read-only devices 2010-03-08 12:26:27 +01:00
dasd_fba.h
dasd_genhd.c [S390] dasd: automatic recognition of read-only devices 2010-03-08 12:26:27 +01:00
dasd_int.h [S390] dasd: automatic recognition of read-only devices 2010-03-08 12:26:27 +01:00
dasd_ioctl.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dasd_proc.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dcssblk.c const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
Kconfig
Makefile
xpram.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00