Re: [PATCH v11 13/26] s390: vfio-ap: zeroize the AP queues

From: Cornelia Huck
Date: Thu Sep 27 2018 - 03:04:43 EST


On Wed, 26 Sep 2018 20:58:41 +0200
Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote:

> On 09/26/2018 03:38 PM, Cornelia Huck wrote:
> > On Tue, 25 Sep 2018 19:16:28 -0400
> > Tony Krowiak <akrowiak@xxxxxxxxxxxxxxxxxx> wrote:
> >
> >> From: Tony Krowiak <akrowiak@xxxxxxxxxxxxx>
> >>
> >> Let's call PAPQ(ZAPQ) to zeroize a queue for each queue configured
> >> for a mediated matrix device when it is released.
> >>
> >> Zeroizing a queue resets the queue, clears all pending
> >> messages for the queue entries and disables adapter interruptions
> >> associated with the queue.
> >>
> >> Signed-off-by: Tony Krowiak <akrowiak@xxxxxxxxxxxxx>
> >> Reviewed-by: Halil Pasic <pasic@xxxxxxxxxxxxx>
> >> Tested-by: Michael Mueller <mimu@xxxxxxxxxxxxx>
> >> Tested-by: Farhan Ali <alifm@xxxxxxxxxxxxx>
> >> ---
> >> drivers/s390/crypto/vfio_ap_ops.c | 44 +++++++++++++++++++++++++++++++
> >> 1 file changed, 44 insertions(+)
(...)
> >> +static int vfio_ap_mdev_reset_queues(struct mdev_device *mdev)
> >> +{
> >> + int ret;
> >> + int rc = 0;
> >> + unsigned long apid, apqi;
> >> + struct ap_matrix_mdev *matrix_mdev = mdev_get_drvdata(mdev);
> >> +
> >> + for_each_set_bit_inv(apid, matrix_mdev->matrix.apm,
> >> + matrix_mdev->matrix.apm_max + 1) {
> >> + for_each_set_bit_inv(apqi, matrix_mdev->matrix.aqm,
> >> + matrix_mdev->matrix.aqm_max + 1) {
> >> + ret = vfio_ap_mdev_reset_queue(apid, apqi, 1);
> >
> > I'd still like to see a comment here:
> >
> > /*
> > * Regardless whether a queue turns out to be busy, or is not
> > * operational, we need to continue resetting the remaining
> > * queues.
> > */
>
> I added your proposal to the apv11 branch.

Thanks. With that added,

Reviewed-by: Cornelia Huck <cohuck@xxxxxxxxxx>