All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Krowiak <akrowiak@linux.ibm.com>
To: freude@linux.ibm.com
Cc: linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org,
	kvm@vger.kernel.org, jjherne@linux.ibm.com,
	borntraeger@de.ibm.com, cohuck@redhat.com,
	mjrosato@linux.ibm.com, pasic@linux.ibm.com,
	alex.williamson@redhat.com, kwankhede@nvidia.com,
	fiuczy@linux.ibm.com
Subject: Re: [PATCH 5/7] s390/vfio_ap: fix handling of error response codes
Date: Tue, 20 Dec 2022 09:25:29 -0500	[thread overview]
Message-ID: <a6f174bf-08e2-835d-b609-4d1c160fe658@linux.ibm.com> (raw)
In-Reply-To: <14c13db623907f41fae355c225db08b9@linux.ibm.com>


On 12/15/22 5:56 AM, Harald Freudenberger wrote:
> On 2022-12-13 16:44, Tony Krowiak wrote:
>> Some response codes returned from the queue reset function are not being
>> handled correctly; this patch fixes them:
>>
>> 1. Response code 3, AP queue deconfigured: Deconfiguring an AP adapter
>>    resets all of its queues, so this is handled by indicating the reset
>>    verification completed successfully.
>>
>> 2. For all response codes other than 0 (normal reset completion), 2
>>    (queue reset in progress) and 3 (AP deconfigured), the -EIO error 
>> will
>>    be returned from the vfio_ap_mdev_reset_queue() function. In all 
>> cases,
>>    all fields of the status word other than the response code will be
>>    set to zero, so it makes no sense to check status bits.
>>
>> Signed-off-by: Tony Krowiak <akrowiak@linux.ibm.com>
>> ---
>>  drivers/s390/crypto/vfio_ap_ops.c | 17 +++++++----------
>>  1 file changed, 7 insertions(+), 10 deletions(-)
>>
>> diff --git a/drivers/s390/crypto/vfio_ap_ops.c
>> b/drivers/s390/crypto/vfio_ap_ops.c
>> index c0cf5050be59..dbf681715a6d 100644
>> --- a/drivers/s390/crypto/vfio_ap_ops.c
>> +++ b/drivers/s390/crypto/vfio_ap_ops.c
>> @@ -1659,17 +1659,15 @@ static int vfio_ap_mdev_reset_queue(struct
>> vfio_ap_queue *q)
>>          if (ret)
>>              break;
>>          goto retry_zapq;
>> -    case AP_RESPONSE_Q_NOT_AVAIL:
>>      case AP_RESPONSE_DECONFIGURED:
>> -    case AP_RESPONSE_CHECKSTOPPED:
>> -        WARN_ONCE(status.irq_enabled,
>> -              "PQAP/ZAPQ for %02x.%04x failed with rc=%u while IRQ 
>> enabled",
>> -              AP_QID_CARD(q->apqn), AP_QID_QUEUE(q->apqn),
>> -              status.response_code);
>> -        ret = -EBUSY;
>> -        goto free_resources;
>> +        /*
>> +         * When an AP adapter is deconfigured, the associated
>> +         * queues are reset, so let's return a value indicating the 
>> reset
>> +         * completed successfully.
>> +         */
>> +        ret = 0;
>> +        break;
>>      default:
>> -        /* things are really broken, give up */
>>          WARN(true,
>>               "PQAP/ZAPQ for %02x.%04x failed with invalid rc=%u\n",
>>               AP_QID_CARD(q->apqn), AP_QID_QUEUE(q->apqn),
>> @@ -1677,7 +1675,6 @@ static int vfio_ap_mdev_reset_queue(struct
>> vfio_ap_queue *q)
>>          return -EIO;
>>      }
>>
>> -free_resources:
>>      vfio_ap_free_aqic_resources(q);
>>
>>      return ret;
>
> Reviewed-by: Harald Freudenberger <freude@linux.ibm.com>


Thanks for the review.



  reply	other threads:[~2022-12-20 14:26 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-13 15:44 [PATCH 0/7] improve AP queue reset processing Tony Krowiak
2022-12-13 15:44 ` [PATCH 1/7] s390/vfio-ap: verify reset complete in separate function Tony Krowiak
2022-12-15  8:24   ` Harald Freudenberger
2022-12-13 15:44 ` [PATCH 2/7] s390/vfio_ap: check TAPQ response code when waiting for queue reset Tony Krowiak
2022-12-15 10:48   ` Harald Freudenberger
2022-12-13 15:44 ` [PATCH 3/7] s390/vfio_ap: use TAPQ to verify reset in progress completes Tony Krowiak
2022-12-15 10:51   ` Harald Freudenberger
2022-12-20 14:22     ` Anthony Krowiak
2022-12-13 15:44 ` [PATCH 4/7] s390/vfio_ap: verify ZAPQ completion after return of response code zero Tony Krowiak
2022-12-15 10:54   ` Harald Freudenberger
2022-12-20 14:24     ` Anthony Krowiak
2022-12-13 15:44 ` [PATCH 5/7] s390/vfio_ap: fix handling of error response codes Tony Krowiak
2022-12-15 10:56   ` Harald Freudenberger
2022-12-20 14:25     ` Anthony Krowiak [this message]
2022-12-13 15:44 ` [PATCH 6/7] s390/vfio_ap: increase max wait time for reset verification Tony Krowiak
2022-12-15 10:58   ` Harald Freudenberger
2022-12-20 14:27     ` Anthony Krowiak
2022-12-13 15:44 ` [PATCH 7/7] s390/vfio_ap: always clean up IRQ resources Tony Krowiak
2022-12-15 10:58   ` Harald Freudenberger
2022-12-19 14:10   ` Halil Pasic
2022-12-20 14:33     ` Anthony Krowiak
2022-12-20 17:24       ` Halil Pasic
2023-01-09 19:40         ` Anthony Krowiak
2022-12-14 15:16 ` [PATCH 0/7] improve AP queue reset processing Jason J. Herne
2022-12-14 19:10   ` Anthony Krowiak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a6f174bf-08e2-835d-b609-4d1c160fe658@linux.ibm.com \
    --to=akrowiak@linux.ibm.com \
    --cc=alex.williamson@redhat.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=fiuczy@linux.ibm.com \
    --cc=freude@linux.ibm.com \
    --cc=jjherne@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=kwankhede@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=mjrosato@linux.ibm.com \
    --cc=pasic@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.