linux_dsm_epyc7002/drivers/s390
Heinz Graalfs 79629b208f virtio_ccw: fix hang in set offline processing
During set offline processing virtio_grab_drvdata() incorrectly
calls dev_set_drvdata() to remove the virtio_ccw_device from the
parent ccw_device's driver data. This is wrong and ends up in a
hang during virtio_ccw_reset(), as the interrupt handler still
has need of the virtio_ccw_device.

A new field 'going_away' is introduced in struct virtio_ccw_device
to control the usage of the ccw_device's driver data pointer in
virtio_grab_drvdata().

Signed-off-by: Heinz Graalfs <graalfs@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
2014-03-06 10:22:40 +01:00
..
block Merge branch 'for-3.14/core' of git://git.kernel.dk/linux-block 2014-01-30 11:19:05 -08:00
char s390/hypfs: add interface for diagnose 0x304 2014-01-24 09:40:59 +01:00
cio s390/airq: add support for irq ranges 2014-03-04 10:41:04 +01:00
crypto s390: Fix misspellings using 'codespell' tool 2014-01-16 16:40:13 +01:00
kvm virtio_ccw: fix hang in set offline processing 2014-03-06 10:22:40 +01:00
net qeth: fix build of s390 allmodconfig 2014-01-29 00:43:33 -08:00
scsi Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-11-15 16:47:22 -08:00
Makefile [S390] split/move machine check handler code 2009-03-26 15:24:10 +01:00