]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fix up queue-5.15/s390-qdio-handle-deferred-cc1.patch
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 27 Apr 2024 14:26:41 +0000 (16:26 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 27 Apr 2024 14:26:41 +0000 (16:26 +0200)
queue-5.15/s390-qdio-handle-deferred-cc1.patch

index ecaba870815941431ad3fcd6418b3625e9ef70bf..7d4bbfa1e1774fa32d3c939b46b13e826e738c57 100644 (file)
@@ -29,14 +29,12 @@ Signed-off-by: Peter Oberparleiter <oberpar@linux.ibm.com>
 Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
 Signed-off-by: Sasha Levin <sashal@kernel.org>
 ---
- drivers/s390/cio/qdio_main.c | 28 +++++++++++++++++++++++-----
+ drivers/s390/cio/qdio_main.c |   28 +++++++++++++++++++++++-----
  1 file changed, 23 insertions(+), 5 deletions(-)
 
-diff --git a/drivers/s390/cio/qdio_main.c b/drivers/s390/cio/qdio_main.c
-index 45e810c6ea3ba..6c186bbd84417 100644
 --- a/drivers/s390/cio/qdio_main.c
 +++ b/drivers/s390/cio/qdio_main.c
-@@ -679,8 +679,8 @@ static void qdio_handle_activate_check(struct qdio_irq *irq_ptr,
+@@ -679,8 +679,8 @@ no_handler:
        lgr_info_log();
  }
  
@@ -47,7 +45,7 @@ index 45e810c6ea3ba..6c186bbd84417 100644
  {
        DBF_DEV_EVENT(DBF_INFO, irq_ptr, "qest irq");
  
-@@ -688,15 +688,18 @@ static void qdio_establish_handle_irq(struct qdio_irq *irq_ptr, int cstat,
+@@ -688,15 +688,18 @@ static void qdio_establish_handle_irq(st
                goto error;
        if (dstat & ~(DEV_STAT_DEV_END | DEV_STAT_CHN_END))
                goto error;
@@ -67,7 +65,7 @@ index 45e810c6ea3ba..6c186bbd84417 100644
  }
  
  /* qdio interrupt handler */
-@@ -705,7 +708,7 @@ void qdio_int_handler(struct ccw_device *cdev, unsigned long intparm,
+@@ -705,7 +708,7 @@ void qdio_int_handler(struct ccw_device
  {
        struct qdio_irq *irq_ptr = cdev->private->qdio_data;
        struct subchannel_id schid;
@@ -76,7 +74,7 @@ index 45e810c6ea3ba..6c186bbd84417 100644
  
        if (!intparm || !irq_ptr) {
                ccw_device_get_schid(cdev, &schid);
-@@ -725,10 +728,12 @@ void qdio_int_handler(struct ccw_device *cdev, unsigned long intparm,
+@@ -725,10 +728,12 @@ void qdio_int_handler(struct ccw_device
        qdio_irq_check_sense(irq_ptr, irb);
        cstat = irb->scsw.cmd.cstat;
        dstat = irb->scsw.cmd.dstat;
@@ -90,7 +88,7 @@ index 45e810c6ea3ba..6c186bbd84417 100644
                break;
        case QDIO_IRQ_STATE_CLEANUP:
                qdio_set_state(irq_ptr, QDIO_IRQ_STATE_INACTIVE);
-@@ -742,12 +747,25 @@ void qdio_int_handler(struct ccw_device *cdev, unsigned long intparm,
+@@ -742,12 +747,25 @@ void qdio_int_handler(struct ccw_device
                if (cstat || dstat)
                        qdio_handle_activate_check(irq_ptr, intparm, cstat,
                                                   dstat);
@@ -105,7 +103,7 @@ index 45e810c6ea3ba..6c186bbd84417 100644
 +
 +      if (rc == -EAGAIN) {
 +              DBF_DEV_EVENT(DBF_INFO, irq_ptr, "qint retry");
-+              rc = ccw_device_start(cdev, irq_ptr->ccw, intparm, 0, 0);
++              rc = ccw_device_start(cdev, &irq_ptr->ccw, intparm, 0, 0);
 +              if (!rc)
 +                      return;
 +              DBF_ERROR("%4x RETRY ERR", irq_ptr->schid.sch_no);
@@ -116,6 +114,3 @@ index 45e810c6ea3ba..6c186bbd84417 100644
        wake_up(&cdev->private->wait_q);
  }
  
--- 
-2.43.0
-