diff options
Diffstat (limited to 'drivers/s390/cio/qdio_main.c')
-rw-r--r-- | drivers/s390/cio/qdio_main.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/s390/cio/qdio_main.c b/drivers/s390/cio/qdio_main.c index 9a122280246c..6547ff469410 100644 --- a/drivers/s390/cio/qdio_main.c +++ b/drivers/s390/cio/qdio_main.c | |||
@@ -160,7 +160,8 @@ again: | |||
160 | DBF_ERROR("%3d%3d%2d", count, tmp_count, nr); | 160 | DBF_ERROR("%3d%3d%2d", count, tmp_count, nr); |
161 | q->handler(q->irq_ptr->cdev, | 161 | q->handler(q->irq_ptr->cdev, |
162 | QDIO_ERROR_ACTIVATE_CHECK_CONDITION, | 162 | QDIO_ERROR_ACTIVATE_CHECK_CONDITION, |
163 | 0, -1, -1, q->irq_ptr->int_parm); | 163 | q->nr, q->first_to_kick, count, |
164 | q->irq_ptr->int_parm); | ||
164 | return 0; | 165 | return 0; |
165 | } | 166 | } |
166 | return count - tmp_count; | 167 | return count - tmp_count; |
@@ -206,7 +207,8 @@ again: | |||
206 | DBF_ERROR("%3d%3d%2d", count, tmp_count, nr); | 207 | DBF_ERROR("%3d%3d%2d", count, tmp_count, nr); |
207 | q->handler(q->irq_ptr->cdev, | 208 | q->handler(q->irq_ptr->cdev, |
208 | QDIO_ERROR_ACTIVATE_CHECK_CONDITION, | 209 | QDIO_ERROR_ACTIVATE_CHECK_CONDITION, |
209 | 0, -1, -1, q->irq_ptr->int_parm); | 210 | q->nr, q->first_to_kick, count, |
211 | q->irq_ptr->int_parm); | ||
210 | return 0; | 212 | return 0; |
211 | } | 213 | } |
212 | WARN_ON(tmp_count); | 214 | WARN_ON(tmp_count); |
@@ -1070,6 +1072,7 @@ static void qdio_handle_activate_check(struct ccw_device *cdev, | |||
1070 | { | 1072 | { |
1071 | struct qdio_irq *irq_ptr = cdev->private->qdio_data; | 1073 | struct qdio_irq *irq_ptr = cdev->private->qdio_data; |
1072 | struct qdio_q *q; | 1074 | struct qdio_q *q; |
1075 | int count; | ||
1073 | 1076 | ||
1074 | DBF_ERROR("%4x ACT CHECK", irq_ptr->schid.sch_no); | 1077 | DBF_ERROR("%4x ACT CHECK", irq_ptr->schid.sch_no); |
1075 | DBF_ERROR("intp :%lx", intparm); | 1078 | DBF_ERROR("intp :%lx", intparm); |
@@ -1083,8 +1086,10 @@ static void qdio_handle_activate_check(struct ccw_device *cdev, | |||
1083 | dump_stack(); | 1086 | dump_stack(); |
1084 | goto no_handler; | 1087 | goto no_handler; |
1085 | } | 1088 | } |
1089 | |||
1090 | count = sub_buf(q->first_to_check, q->first_to_kick); | ||
1086 | q->handler(q->irq_ptr->cdev, QDIO_ERROR_ACTIVATE_CHECK_CONDITION, | 1091 | q->handler(q->irq_ptr->cdev, QDIO_ERROR_ACTIVATE_CHECK_CONDITION, |
1087 | 0, -1, -1, irq_ptr->int_parm); | 1092 | q->nr, q->first_to_kick, count, irq_ptr->int_parm); |
1088 | no_handler: | 1093 | no_handler: |
1089 | qdio_set_state(irq_ptr, QDIO_IRQ_STATE_STOPPED); | 1094 | qdio_set_state(irq_ptr, QDIO_IRQ_STATE_STOPPED); |
1090 | } | 1095 | } |