The fsm_func_t function type definition does not need the event
parameter since all functions are in a state/event table.

Signed-off-by: Pierre Morel <pmo...@linux.vnet.ibm.com>
---
 drivers/s390/cio/vfio_ccw_fsm.c     | 34 +++++++++++-----------------------
 drivers/s390/cio/vfio_ccw_private.h |  5 ++---
 2 files changed, 13 insertions(+), 26 deletions(-)

diff --git a/drivers/s390/cio/vfio_ccw_fsm.c b/drivers/s390/cio/vfio_ccw_fsm.c
index f9855cd..f8ded70 100644
--- a/drivers/s390/cio/vfio_ccw_fsm.c
+++ b/drivers/s390/cio/vfio_ccw_fsm.c
@@ -55,8 +55,7 @@ static int fsm_io_helper(struct vfio_ccw_private *private)
        }
 }
 
-static int fsm_notoper(struct vfio_ccw_private *private,
-                       enum vfio_ccw_event event)
+static int fsm_notoper(struct vfio_ccw_private *private)
 {
        struct subchannel *sch = private->sch;
 
@@ -65,36 +64,31 @@ static int fsm_notoper(struct vfio_ccw_private *private,
         * Probably we should send the machine check to the guest.
         */
        css_sched_sch_todo(sch, SCH_TODO_UNREG);
-       private->state = VFIO_CCW_STATE_NOT_OPER;
-       return private->state;
+       return VFIO_CCW_STATE_NOT_OPER;
 }
 
 /*
  * No operation action.
  */
-static int fsm_nop(struct vfio_ccw_private *private,
-                   enum vfio_ccw_event event)
+static int fsm_nop(struct vfio_ccw_private *private)
 {
        return private->state;
 }
 
-static int fsm_io_error(struct vfio_ccw_private *private,
-                        enum vfio_ccw_event event)
+static int fsm_io_error(struct vfio_ccw_private *private)
 {
        pr_err("vfio-ccw: FSM: I/O request from state:%d\n", private->state);
        private->io_region.ret_code = -EIO;
        return private->state;
 }
 
-static int fsm_io_busy(struct vfio_ccw_private *private,
-                       enum vfio_ccw_event event)
+static int fsm_io_busy(struct vfio_ccw_private *private)
 {
        private->io_region.ret_code = -EBUSY;
        return private->state;
 }
 
-static int fsm_disabled_irq(struct vfio_ccw_private *private,
-                            enum vfio_ccw_event event)
+static int fsm_disabled_irq(struct vfio_ccw_private *private)
 {
        struct subchannel *sch = private->sch;
 
@@ -109,17 +103,14 @@ static int fsm_disabled_irq(struct vfio_ccw_private 
*private,
 /*
  * Deal with the ccw command request from the userspace.
  */
-static int fsm_io_request(struct vfio_ccw_private *private,
-                          enum vfio_ccw_event event)
+static int fsm_io_request(struct vfio_ccw_private *private)
 {
-       union orb *orb;
        struct ccw_io_region *io_region = &private->io_region;
+       union orb *orb = (union orb *)io_region->orb_area;
        struct mdev_device *mdev = private->mdev;
 
        private->state = VFIO_CCW_STATE_BOXED;
 
-       orb = (union orb *)io_region->orb_area;
-
        io_region->ret_code = cp_init(&private->cp, mdev_dev(mdev), orb);
        if (io_region->ret_code)
                goto err_out;
@@ -139,15 +130,13 @@ static int fsm_io_request(struct vfio_ccw_private 
*private,
        return VFIO_CCW_STATE_BUSY;
 
 err_out:
-       private->state = VFIO_CCW_STATE_IDLE;
-       return private->state;
+       return VFIO_CCW_STATE_IDLE;
 }
 
 /*
  * Got an interrupt for a normal io (state busy).
  */
-static int fsm_irq(struct vfio_ccw_private *private,
-                   enum vfio_ccw_event event)
+static int fsm_irq(struct vfio_ccw_private *private)
 {
        struct irb *irb = &private->irb;
 
@@ -166,8 +155,7 @@ static int fsm_irq(struct vfio_ccw_private *private,
 /*
  * Got a sub-channel event .
  */
-static int fsm_sch_event(struct vfio_ccw_private *private,
-                        enum vfio_ccw_event event)
+static int fsm_sch_event(struct vfio_ccw_private *private)
 {
        unsigned long flags;
        int ret = private->state;
diff --git a/drivers/s390/cio/vfio_ccw_private.h 
b/drivers/s390/cio/vfio_ccw_private.h
index 93aab87..823e46c 100644
--- a/drivers/s390/cio/vfio_ccw_private.h
+++ b/drivers/s390/cio/vfio_ccw_private.h
@@ -86,14 +86,13 @@ enum vfio_ccw_event {
 /*
  * Action called through jumptable.
  */
-typedef int (fsm_func_t)(struct vfio_ccw_private *, enum vfio_ccw_event);
+typedef int (fsm_func_t)(struct vfio_ccw_private *);
 extern fsm_func_t *vfio_ccw_jumptable[NR_VFIO_CCW_STATES][NR_VFIO_CCW_EVENTS];
 
 static inline void vfio_ccw_fsm_event(struct vfio_ccw_private *private,
                                     int event)
 {
-       private->state = vfio_ccw_jumptable[private->state][event](private,
-                                                                  event);
+       private->state = vfio_ccw_jumptable[private->state][event](private);
 }
 
 extern struct workqueue_struct *vfio_ccw_work_q;
-- 
2.7.4

Reply via email to