[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [qemu-s390x] [Qemu-devel] [PATCH v3 2/7] s390x/pci: rework PCI STORE
From: |
Thomas Huth |
Subject: |
Re: [qemu-s390x] [Qemu-devel] [PATCH v3 2/7] s390x/pci: rework PCI STORE |
Date: |
Mon, 27 Nov 2017 07:45:39 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 |
On 25.11.2017 11:39, Pierre Morel wrote:
> On 23/11/2017 10:01, Thomas Huth wrote:
>> On 22.11.2017 23:05, Pierre Morel wrote:
>>> Enhance the fault detection, correction of the fault reporting.
>>>
>>> Signed-off-by: Pierre Morel <address@hidden>
>>> Reviewed-by: Yi Min Zhao <address@hidden>
>>> ---
>>> hw/s390x/s390-pci-inst.c | 39 ++++++++++++++++++++++-----------------
>>> 1 file changed, 22 insertions(+), 17 deletions(-)
>>>
>>> diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c
>>> index 3e1f1a0..930c197 100644
>>> --- a/hw/s390x/s390-pci-inst.c
>>> +++ b/hw/s390x/s390-pci-inst.c
>>> @@ -470,6 +470,12 @@ int pcistg_service_call(S390CPU *cpu, uint8_t
>>> r1, uint8_t r2)
>>> pcias = (env->regs[r2] >> 16) & 0xf;
>>> len = env->regs[r2] & 0xf;
>>> offset = env->regs[r2 + 1];
>>> + data = env->regs[r1];
>>> +
>>> + if (!(fh & FH_MASK_ENABLE)) {
>>> + setcc(cpu, ZPCI_PCI_LS_INVAL_HANDLE);
>>> + return 0;
>>> + }
>>> pbdev = s390_pci_find_dev_by_fh(s390_get_phb(), fh);
>>> if (!pbdev) {
>>> @@ -479,12 +485,7 @@ int pcistg_service_call(S390CPU *cpu, uint8_t
>>> r1, uint8_t r2)
>>> }
>>> switch (pbdev->state) {
>>> - case ZPCI_FS_RESERVED:
>>> - case ZPCI_FS_STANDBY:
>>> - case ZPCI_FS_DISABLED:
>>> case ZPCI_FS_PERMANENT_ERROR:
>>> - setcc(cpu, ZPCI_PCI_LS_INVAL_HANDLE);
>>> - return 0;
>>> case ZPCI_FS_ERROR:
>>> setcc(cpu, ZPCI_PCI_LS_ERR);
>>> s390_set_status_code(env, r2, ZPCI_PCI_ST_BLOCKED);
>>
>> -EMISSINGPUBLICDOCUMENTATION
>
> Hi Thomas,
>
> I do not understand what you mean here
Not your fault, I just wanted to express that I can not really review
this part of the patch (and thus not provide a Reviewed-by) since there
is no public documentation available for zPCI :-(
Thomas