Re: [PATCH v4 3/7] s390: ap: associate a ap_vfio_queue and a matrix mdev

From: Pierre Morel
Date: Wed Feb 27 2019 - 05:21:44 EST

On 27/02/2019 10:32, Cornelia Huck wrote:
On Fri, 22 Feb 2019 16:29:56 +0100
Pierre Morel <pmorel@xxxxxxxxxxxxx> wrote:

We need to associate the ap_vfio_queue, which will hold the
per queue information for interrupt with a matrix mediated device
which hold the configuration and the way to the CRYCB.

Let's do this when assigning a APID or a APQI to the mediated device
and clear the relation when unassigning.

Queuing the devices on a list of free devices and testing the
matrix_mdev pointer to the associated matrix allow us to know
if the queue is associated to the matrix device and associated
or not to a mediated device.

When resetting an AP queue we must wait until there are no more
messages in the message queue before considering the queue is really
in a clean state.

Let's do it and wait until the status response code indicate the
queue is empty after issuing a PAPQ/ZAPQ instruction.

I'm a bit confused about the context where that list moving etc. is
supposed to take place.

When are we assigning/deassigning? Is there even supposed to be any
activity that we need to zap on the queues?

Do we need any serialization/locking on the lists?

Did I really forget this!?

Yes, thanks.


Pierre Morel
Linux/KVM/QEMU in BÃblingen - Germany