Hi Conny, Matt, Halil, Here's the update to my proposed series for handling the collision between interrupts for START SUBCHANNEL and HALT/CLEAR SUBCHANNEL. I'm feeling more confident in the state of them now based on the discussion on v4, so will keep the cover letter brief. :) I carried patches 1 and 3 from the last version forward, as patch 1 and 2 here. (Thanks, Conny, for the r-b's on them.) I dropped patches 2 and 4 from the last version, as part of this newest attempt. The conversation on patch 4 [1] has formed into the new patch 3. As we'd discussed offline last week, I still have the todo for a more proper audit of the serialization across these codepaths. But this seems a better, simpler, fix for the code in its current form, which addresses my problematic test case and does not impact my usual regression tests. Any further rework for the serialization [2] will be more invasive, and take a bit longer. Thanks, Eric Changelog: v4->v5: - Applied Conny's r-b to patches 1 and 3 - Dropped patch 2 and 4 - Use a "finished" flag in the interrupt completion path Previous versions: v4: https://lore.kernel.org/kvm/20210413182410.1396170-1-farman@xxxxxxxxxxxxx/ v3: https://lore.kernel.org/kvm/20200616195053.99253-1-farman@xxxxxxxxxxxxx/ v2: https://lore.kernel.org/kvm/20200513142934.28788-1-farman@xxxxxxxxxxxxx/ v1: https://lore.kernel.org/kvm/20200124145455.51181-1-farman@xxxxxxxxxxxxx/ References: [1] https://lore.kernel.org/kvm/2c1c1e73d488673ec39d7c085a343cbd6b50fb41.camel@xxxxxxxxxxxxx/ [2] https://lore.kernel.org/kvm/20210416164137.23f4631b.cohuck@xxxxxxxxxx/ Eric Farman (3): vfio-ccw: Check initialized flag in cp_init() vfio-ccw: Reset FSM state to IDLE inside FSM vfio-ccw: Serialize FSM IDLE state with I/O completion drivers/s390/cio/vfio_ccw_cp.c | 4 ++++ drivers/s390/cio/vfio_ccw_drv.c | 8 +++++--- drivers/s390/cio/vfio_ccw_fsm.c | 1 + drivers/s390/cio/vfio_ccw_ops.c | 2 -- 4 files changed, 10 insertions(+), 5 deletions(-) -- 2.25.1