public inbox for linux-s390@vger.kernel.org
 help / color / mirror / Atom feed
From: Pierre Morel <pmorel@linux.ibm.com>
To: Harald Freudenberger <freude@linux.ibm.com>,
	Tony Krowiak <akrowiak@linux.vnet.ibm.com>,
	linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org,
	kvm@vger.kernel.org
Cc: freude@de.ibm.com, schwidefsky@de.ibm.com,
	heiko.carstens@de.ibm.com, borntraeger@de.ibm.com,
	cohuck@redhat.com, kwankhede@nvidia.com,
	bjsdjshi@linux.vnet.ibm.com, pbonzini@redhat.com,
	alex.williamson@redhat.com, pmorel@linux.vnet.ibm.com,
	alifm@linux.vnet.ibm.com, mjrosato@linux.vnet.ibm.com,
	jjherne@linux.vnet.ibm.com, thuth@redhat.com,
	pasic@linux.vnet.ibm.com, berrange@redhat.com,
	fiuczy@linux.vnet.ibm.com, buendgen@de.ibm.com,
	Tony Krowiak <akrowiak@linux.ibm.com>
Subject: Re: [PATCH v6 21/21] s390: doc: detailed specifications for AP virtualization
Date: Mon, 9 Jul 2018 11:02:48 +0200	[thread overview]
Message-ID: <9e84e47e-1022-0b87-7567-24b562086abb@linux.ibm.com> (raw)
In-Reply-To: <f3bba295-f854-fc9e-c4eb-47846178df12@linux.ibm.com>

On 03/07/2018 10:10, Harald Freudenberger wrote:
> On 29.06.2018 23:11, Tony Krowiak wrote:
...snip...
> +The process for reserving an AP queue for use by a KVM guest is:
> +
> +* The vfio-ap driver during its initialization will perform the following:
> +  * Create the 'vfio_ap' root device - /sys/devices/vfio_ap
> +  * Create the 'matrix' device in the 'vfio_ap' root
> +  * Register the matrix device with the device core
> +* Register with the ap_bus for AP queue devices of type 10 devices (CEX4 and
> +  newer) and to provide the vfio_ap driver's probe and remove callback
> +  interfaces. The reason why older devices are not supported is because there
> +  are no systems available on which to test.
> This is simple not true. The reason is this is a design decision. The older
> cards are simple somewhat more complicated and we don't want to
> add even more complexity to the ap virtualization implementation.
> We also said several times that APXA is a requirement not a feature.

I understand your point of view as maintainer of the cryptographic driver
but I do not see the point concerning virtualization.
The SIE allows to work fine without APXA.
Is there any reason to add a restrictions here?

If there is a good reason then  the problem should be treated when 
detecting the presence
of APXA. AFAIR we do not do this.

>> +* The admin unbinds queue cc.qqqq from the cex4queue device driver. This results
>> +  in the ap_bus calling the the device driver's remove interface which
>> +  unbinds the cc.qqqq queue device from the driver.
>> +* The admin binds the cc.qqqq queue to the vfio_ap device driver. This results
>> +  in the ap_bus calling the device vfio_ap driver's probe interface to bind
>> +  queue cc.qqqq to the driver. The vfio_ap device driver will store the APQN for
>> +  the queue in the matrix device
...snip...
>> +
>> +Guest2
>> +------
>> +CARD.DOMAIN TYPE  MODE
>> +------------------------------
>> +05          CEX5A Accelerator
>> +05.0047     CEX5A Accelerator
>> +05.00ff     CEX5A Accelerator
> Btw: this is an excellent example about thinking beyond the current design.
> We don't want to dedicate Accelerators to guests. Accelerators should be
> shared, CCA and EP11 Coprocessors should be dedicated. So maybe
> change the example to use EP11 and CCA Coprocessors .... and think
> about how shared Accelerators could be handled.

Shouldn't this problematic be let to the administrator?
Using the SIE for virtualization is independent of the kind of
card.
Why, again, see above, should we take the type of card into account
at this level?

>> +
>> +These are the steps:
...snip...

>> +   echo 1 > remove
>> +
>> +   This will remove all of the mdev matrix device's sysfs structures. To
>> +   recreate and reconfigure the mdev matrix device, all of the steps starting
>> +   with step 4 will have to be performed again.
>> +
>> +   It is not necessary to remove an mdev matrix device, but one may want to
>> +   remove it if no guest will use it during the lifetime of the linux host. If
>> +   the mdev matrix device is removed, one may want to unbind the AP queues the
>> +   guest was using from the vfio_ap device driver and bind them back to the
>> +   default driver. Alternatively, the AP queues can be configured for another
> Please note: you can't just 'bind them back to the default driver'. You need
> to unbind and then call dev_reprobe() which triggers the default way of
> assigning a driver to a device and give the ap bus a chance to handle this.

Are you saying that the administrator can not unbind a AP device
and bind it to another AP driver?
I am surprised. can you explain?

Best regards,

Pierre


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

      reply	other threads:[~2018-07-09  9:02 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-29 21:11 [PATCH v6 00/21] s390: vfio-ap: guest dedicated crypto adapters Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 01/21] s390/zcrypt: Add ZAPQ inline function Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 02/21] s390/zcrypt: Review inline assembler constraints Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 03/21] s390/zcrypt: Show load of cards and queues in sysfs Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 04/21] s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 05/21] KVM: s390: CPU model support for AP virtualization Tony Krowiak
2018-07-02 14:38   ` Christian Borntraeger
2018-07-02 15:37     ` Tony Krowiak
2018-07-02 15:41       ` Cornelia Huck
2018-07-02 15:54         ` Tony Krowiak
2018-07-02 16:11           ` Cornelia Huck
2018-07-02 16:20             ` Halil Pasic
2018-07-02 16:28               ` Cornelia Huck
2018-07-03 14:44                 ` Tony Krowiak
2018-07-02 16:04       ` Halil Pasic
2018-07-02 15:56   ` Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 06/21] KVM: s390: refactor crypto initialization Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 07/21] s390: vfio-ap: base implementation of VFIO AP device driver Tony Krowiak
2018-07-02 13:53   ` Halil Pasic
2018-07-02 15:39     ` Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 08/21] s390: vfio-ap: register matrix device with VFIO mdev framework Tony Krowiak
2018-07-09 14:17   ` Pierre Morel
2018-07-10  7:03     ` Harald Freudenberger
2018-07-12  7:32       ` Tony Krowiak
2018-07-09 15:44   ` Pierre Morel
2018-06-29 21:11 ` [PATCH v6 09/21] s390: vfio-ap: structure for storing mdev matrix Tony Krowiak
2018-07-06 14:26   ` Halil Pasic
2018-07-12 14:34     ` Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 10/21] s390: vfio-ap: sysfs interfaces to configure adapters Tony Krowiak
2018-07-09 12:11   ` Pierre Morel
2018-07-13 12:20     ` Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 11/21] s390: vfio-ap: sysfs interfaces to configure domains Tony Krowiak
2018-07-09 12:13   ` Pierre Morel
2018-06-29 21:11 ` [PATCH v6 12/21] s390: vfio-ap: sysfs interfaces to configure control domains Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 13/21] s390: vfio-ap: sysfs interface to view matrix mdev matrix Tony Krowiak
2018-07-09 12:20   ` Pierre Morel
2018-07-09 14:38     ` Pierre Morel
2018-07-13 12:24       ` Tony Krowiak
2018-07-13 16:38         ` Halil Pasic
2018-06-29 21:11 ` [PATCH v6 14/21] s390: vfio-ap: implement mediated device open callback Tony Krowiak
2018-07-12 12:47   ` Halil Pasic
2018-07-12 16:03     ` Tony Krowiak
2018-07-13 10:48       ` Halil Pasic
2018-06-29 21:11 ` [PATCH v6 15/21] s390: vfio-ap: configure the guest's AP matrix Tony Krowiak
2018-07-11 23:22   ` Halil Pasic
2018-07-12 14:36     ` Tony Krowiak
2018-07-12 13:28   ` Halil Pasic
2018-07-12 14:37     ` Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 16/21] s390: vfio-ap: sysfs interface to view guest matrix Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 17/21] s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 18/21] s390: vfio-ap: zeroize the AP queues Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 19/21] s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 20/21] KVM: s390: Handling of Cypto control block in VSIE Tony Krowiak
2018-06-29 21:11 ` [PATCH v6 21/21] s390: doc: detailed specifications for AP virtualization Tony Krowiak
2018-07-02 16:28   ` Halil Pasic
2018-07-03  7:46     ` Harald Freudenberger
2018-07-03  9:22       ` Halil Pasic
2018-07-03 11:52         ` Cornelia Huck
2018-07-03 12:20           ` Halil Pasic
2018-07-03 13:25             ` Cornelia Huck
2018-07-03 13:58               ` Halil Pasic
2018-07-03 14:30                 ` Cornelia Huck
2018-07-03 15:25                   ` Tony Krowiak
2018-07-03 16:14                   ` Halil Pasic
2018-07-03 15:20               ` Tony Krowiak
2018-07-03 15:17             ` Tony Krowiak
2018-07-03 15:00           ` Tony Krowiak
2018-07-03 14:56       ` Tony Krowiak
2018-07-04  8:31         ` Harald Freudenberger
2018-07-02 23:10   ` Halil Pasic
2018-07-03 16:36     ` Tony Krowiak
2018-07-04 16:31       ` Boris Fiuczynski
2018-07-05 13:29         ` Tony Krowiak
2018-07-09  9:21     ` Pierre Morel
2018-07-09 15:50       ` Halil Pasic
2018-07-10  8:49         ` Pierre Morel
2018-07-12  7:26       ` Tony Krowiak
2018-07-03  8:10   ` Harald Freudenberger
2018-07-09  9:02     ` Pierre Morel [this message]

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=9e84e47e-1022-0b87-7567-24b562086abb@linux.ibm.com \
    --to=pmorel@linux.ibm.com \
    --cc=akrowiak@linux.ibm.com \
    --cc=akrowiak@linux.vnet.ibm.com \
    --cc=alex.williamson@redhat.com \
    --cc=alifm@linux.vnet.ibm.com \
    --cc=berrange@redhat.com \
    --cc=bjsdjshi@linux.vnet.ibm.com \
    --cc=borntraeger@de.ibm.com \
    --cc=buendgen@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=fiuczy@linux.vnet.ibm.com \
    --cc=freude@de.ibm.com \
    --cc=freude@linux.ibm.com \
    --cc=heiko.carstens@de.ibm.com \
    --cc=jjherne@linux.vnet.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.vnet.ibm.com \
    --cc=pasic@linux.vnet.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=pmorel@linux.vnet.ibm.com \
    --cc=schwidefsky@de.ibm.com \
    --cc=thuth@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox