Re: [PATCH v4 1/7] s390: ap: kvm: add PQAP interception for AQIC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/03/2019 13:36, Cornelia Huck wrote:
On Fri, 1 Mar 2019 13:05:54 +0100
Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote:

On 01.03.2019 13:03, Pierre Morel wrote:
On 28/02/2019 15:14, Pierre Morel wrote:
On 28/02/2019 14:52, Cornelia Huck wrote:
On Thu, 28 Feb 2019 14:16:09 +0100
Pierre Morel <pmorel@xxxxxxxxxxxxx> wrote:
On 28/02/2019 12:22, Cornelia Huck wrote:
So, to summarize, the function should do:
- Is userspace supposed to emulate everything (!ECA_APIE)? Return
     -EOPNOTSUPP to hand control to it.
- We are now interpreting the instruction in KVM. Do common checks
     (PSTATE etc.) and inject exceptions, if needed.
- Now look at the fc; if there's a handler for it, call that; if not
     (case does not attempt to call a specific handler, or no handler
     registered), inject a specification exception. (Do we want pre-checks
     like for facility 65 here, or in the handler?)

That response code 0x01 thingy probably needs to go into the specific
handler function, if anywhere (don't know the semantics, sorry).

What do you mean with specific handler function?

If you mean a switch around the FC with static function's call, I agree,
if you mean a jump into a hook I do not agree.

Ah, ok; so each case (that we want to handle) should call into a
subhandler that does
{
     (... check things like facilities ...)
     if (!specific_hook)
         inject_specif_excp_and_return();
     ret = specific_hook();
     if (ret)
         set_resp_code_0x01(); // or in specific_hook()?
}

?

Yes something in this direction.

Sorry, after reflection, no, we do not want to change the previous behavior so we only handle the AQIC case.

I think what you wanted to say is the following:
Today (without the patch set) we will answer PQAP with an exception.
With this patch set we want to handle FC==3, but nothing else. So for anything FC!=3 we
will continue to return an exception?

Correct?

Yes correct.
Thanks for the much preciser explanation.



That sounds reasonable; but I don't see how this conflicts with my
proposal? Just don't introduce a subfunction for fc != 3...


Correct too, it does not conflict, as you said it is just not introduce subfunctions.

Regards,
Pierre


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




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux