1
0
Fork 0
alistair23-linux/drivers/s390/cio
Julian Wiedmann eb3e85b337 s390/qdio: put thinint indicator after early error
[ Upstream commit 75e82bec6b ]

qdio_establish() calls qdio_setup_thinint() via qdio_setup_irq().
If the subsequent qdio_establish_thinint() fails, we miss to put the
DSCI again. Thus the DSCI isn't available for re-use. Given enough of
such errors, we could end up with having only the shared DSCI available.

Merge qdio_setup_thinint() into qdio_establish_thinint(), and deal with
such an error internally.

Fixes: 779e6e1c72 ("[S390] qdio: new qdio driver.")
Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Reviewed-by: Benjamin Block <bblock@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-06-24 17:50:22 +02:00
..
Makefile vfio-ccw: add handling for async channel instructions 2019-04-24 14:18:51 +02:00
airq.c s390/airq: use DMA memory for adapter interrupts 2019-06-15 12:25:05 +02:00
blacklist.c s390/cio: cio_ignore_proc_seq_next should increase position index 2020-03-12 13:00:13 +01:00
blacklist.h
ccwgroup.c s390 updates for the 5.4 merge window #2 2019-09-26 11:30:16 -07:00
ccwreq.c s390/cio: add basic protected virtualization support 2019-06-15 12:25:00 +02:00
chp.c
chp.h
chsc.c s390/cio: move struct node_descriptor to cio.h 2019-06-19 17:54:27 +02:00
chsc.h s390/cio: add function chsc_sgib() 2019-02-05 14:29:23 +01:00
chsc_sch.c driver_find_device: Unify the match function with class_find_device() 2019-06-24 05:22:31 +02:00
chsc_sch.h
cio.c s390: show statistics for MSI IRQs 2019-04-29 10:47:01 +02:00
cio.h s390/cio: fix virtio-ccw DMA without PV 2019-10-10 10:49:46 +02:00
cio_debug.h
cmf.c mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
crw.c
css.c s390/cio: fix virtio-ccw DMA without PV 2019-10-10 10:49:46 +02:00
css.h
device.c s390/cio: avoid duplicated 'ADD' uevents 2020-04-29 16:33:01 +02:00
device.h
device_fsm.c s390/cio: add basic protected virtualization support 2019-06-15 12:25:00 +02:00
device_id.c s390/cio: add basic protected virtualization support 2019-06-15 12:25:00 +02:00
device_ops.c s390/dasd/cio: Interpret ccw_device_get_mdc return value correctly 2020-01-12 12:21:43 +01:00
device_pgid.c s390/cio: add basic protected virtualization support 2019-06-15 12:25:00 +02:00
device_status.c s390/cio: add basic protected virtualization support 2019-06-15 12:25:00 +02:00
eadm_sch.c
eadm_sch.h
fcx.c
idset.c
idset.h
io_sch.h s390/cio: add basic protected virtualization support 2019-06-15 12:25:00 +02:00
ioasm.c s390/cio: export hsch to modules 2019-04-24 14:18:51 +02:00
ioasm.h
isc.c
itcw.c
orb.h
qdio.h s390/qdio: put thinint indicator after early error 2020-06-24 17:50:22 +02:00
qdio_debug.c s390/qdio: eliminate queue's last_move cursor 2019-04-10 17:47:26 +02:00
qdio_debug.h
qdio_main.c s390/qdio: let drivers opt-out from Output Queue scanning 2019-08-24 16:39:18 -07:00
qdio_setup.c s390/qdio: put thinint indicator after early error 2020-06-24 17:50:22 +02:00
qdio_thinint.c s390/qdio: put thinint indicator after early error 2020-06-24 17:50:22 +02:00
scm.c bus_find_device: Unify the match callback with class_find_device 2019-06-24 05:22:31 +02:00
trace.c s390/cio: Remove tracing for rchp instruction 2019-05-08 15:01:22 +02:00
trace.h s390/cio: Remove tracing for rchp instruction 2019-05-08 15:01:22 +02:00
vfio_ccw_async.c vfio-ccw: make vfio_ccw_async_region_ops static 2019-07-29 18:05:03 +02:00
vfio_ccw_cp.c vfio-ccw: Set pa_nr to 0 if memory allocation fails for pa_iova_pfn 2019-07-15 14:16:37 +02:00
vfio_ccw_cp.h vfio-ccw: Move guest_cp storage into common struct 2019-06-21 14:12:19 +02:00
vfio_ccw_drv.c s390/cio: generate delayed uevent for vfio-ccw subchannels 2020-04-29 16:33:01 +02:00
vfio_ccw_fsm.c vfio-ccw: add some logging 2019-08-23 12:53:32 +02:00
vfio_ccw_ops.c vfio-ccw: add some logging 2019-08-23 12:53:32 +02:00
vfio_ccw_private.h vfio-ccw: add some logging 2019-08-23 12:53:32 +02:00
vfio_ccw_trace.h