mbox series

[v2,00/10] s390/vfio-ccw rework

Message ID 20220615203318.3830778-1-farman@linux.ibm.com (mailing list archive)
Headers show
Series s390/vfio-ccw rework | expand

Message

Eric Farman June 15, 2022, 8:33 p.m. UTC
Last autumn, Jason Gunthorpe proposed some rework of vfio-ccw [1],
to better fit with the new mdev API (thank you!). Part of that
series was pulled for kernel 5.16 [2], but the complexities of
the remaining patches got them hung up behind other work.

I dusted off that work a couple weeks ago (see v1), but am going
to split that further with the goal of this part to clean up the
existing device lifecycle and FSM used by vfio-ccw. The remaining
work runs into conflicts with other work (notably [2]), so I'd
like to propose this first group without that hangup. This makes
the behavior/usage of the FSM state a lot more consistent than
it is today.

This is all internal to vfio-ccw, with the exception of removal
of mdev_uuid from include/linux/mdev.h in patch 1.
@Kirti, I can drop that hunk if that's a concern for you.

One potential conflict still exists on patch 6, with [3].

v1->v2:
 - Rebased to v5.19-rc2
   - Patch 1: Remove mdev.h from vfio_ccw_fsm.c
   - Patch 4: Earlier patches removed meaningful users of private->mdev,
     leaving this as a very simple cleanup
 - [JG,MR] Added r-b's (Thank You!)
 - [MR] Patch 1: Update commit message
 - [MR] Patch 2: Add comment regarding interrupt types changing FSM state
 - [MR] Patch 5: Drop Fixes tag
 - [JG] Drop patch for clearing drvdata on mdev remove
 - [EF] Defer items to later series
   - The "if !private" patch, and JG's associated comment on patch 7;
     entire process requires further investigation
   - The vfio-mdev rework patches (to [2])
   - The "tie vfio_ccw_private to mdev lifecycle" patches
v1: https://lore.kernel.org/r/20220602171948.2790690-1-farman@linux.ibm.com/

Footnotes:
[1] https://lore.kernel.org/r/0-v3-57c1502c62fd+2190-ccw_mdev_jgg@nvidia.com/
[2] https://lore.kernel.org/r/20220603063328.3715-1-hch@lst.de/
[3] https://lore.kernel.org/r/165471414407.203056.474032786990662279.stgit@omen/

Cc: Kirti Wankhede <kwankhede@nvidia.com>

Eric Farman (9):
  vfio/ccw: Fix FSM state if mdev probe fails
  vfio/ccw: Do not change FSM state in subchannel event
  vfio/ccw: Remove private->mdev
  vfio/ccw: Pass enum to FSM event jumptable
  vfio/ccw: Flatten MDEV device (un)register
  vfio/ccw: Create an OPEN FSM Event
  vfio/ccw: Create a CLOSE FSM event
  vfio/ccw: Refactor vfio_ccw_mdev_reset
  vfio/ccw: Move FSM open/close to MDEV open/close

Michael Kawano (1):
  vfio/ccw: Remove UUID from s390 debug log

 drivers/s390/cio/vfio_ccw_async.c   |  1 -
 drivers/s390/cio/vfio_ccw_drv.c     | 59 ++++++-------------
 drivers/s390/cio/vfio_ccw_fsm.c     | 89 ++++++++++++++++++++++++-----
 drivers/s390/cio/vfio_ccw_ops.c     | 77 ++++++++-----------------
 drivers/s390/cio/vfio_ccw_private.h |  9 +--
 include/linux/mdev.h                |  5 --
 6 files changed, 117 insertions(+), 123 deletions(-)