[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC 5/7] s390x/pci: fence off instructions for n
From: |
Thomas Huth |
Subject: |
Re: [Qemu-devel] [PATCH RFC 5/7] s390x/pci: fence off instructions for non-pci |
Date: |
Fri, 7 Jul 2017 15:00:20 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 |
On 07.07.2017 14:21, Cornelia Huck wrote:
> If a guest running on a non-pci build issues a pci instruction,
> throw them an exception.
>
> Signed-off-by: Cornelia Huck <address@hidden>
> ---
> target/s390x/kvm.c | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/target/s390x/kvm.c b/target/s390x/kvm.c
> index a3d00196f4..c5c7c27a21 100644
> --- a/target/s390x/kvm.c
> +++ b/target/s390x/kvm.c
> @@ -1160,6 +1160,9 @@ static int kvm_clp_service_call(S390CPU *cpu, struct
> kvm_run *run)
> {
> uint8_t r2 = (run->s390_sieic.ipb & 0x000f0000) >> 16;
>
> +#ifndef CONFIG_PCI
> + return -1;
> +#endif
> return clp_service_call(cpu, r2);
> }
>
> @@ -1168,6 +1171,9 @@ static int kvm_pcilg_service_call(S390CPU *cpu, struct
> kvm_run *run)
> uint8_t r1 = (run->s390_sieic.ipb & 0x00f00000) >> 20;
> uint8_t r2 = (run->s390_sieic.ipb & 0x000f0000) >> 16;
>
> +#ifndef CONFIG_PCI
> + return -1;
> +#endif
> return pcilg_service_call(cpu, r1, r2);
> }
pcilg_service_call() seems to be defined in s390-pci-inst.c ... which
you later remove from the !CONFIG_PCI builds... so I wonder why this
still compiles ... I guess GCC is smart enough to optimize it away.
Anyway, to be on the safe side (and to be able to compile with -O0), you
should maybe rather do this instead:
#ifndef CONFIG_PCI
return -1;
#else
return pcilg_service_call(cpu, r1, r2);
#endif
?
Thomas
- Re: [Qemu-devel] [PATCH RFC 1/7] kvm: remove hard dependency on pci, (continued)
Re: [Qemu-devel] [PATCH RFC 5/7] s390x/pci: fence off instructions for non-pci,
Thomas Huth <=
[Qemu-devel] [PATCH RFC 7/7] s390x: refine pci dependencies, Cornelia Huck, 2017/07/07
[Qemu-devel] [PATCH RFC 6/7] s390x/kvm: msi route fixup for non-pci, Cornelia Huck, 2017/07/07