qemu-s390x
[Top][All Lists]
Advanced

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

Re: [qemu-s390x] [Qemu-devel] [PATCH] hw/s390x: Fix the function argumen


From: Thomas Huth
Subject: Re: [qemu-s390x] [Qemu-devel] [PATCH] hw/s390x: Fix the function arguments in the pci stub file
Date: Fri, 1 Feb 2019 07:46:40 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1

On 2019-02-01 07:14, Thomas Huth wrote:
> On 2019-01-31 19:08, Paolo Bonzini wrote:
>> On 31/01/19 19:00, Thomas Huth wrote:
>>>>> (and the prototypes in the header) anymore, so if you try to compile s390x
>>>>> without CONFIG_PCI, the build currently fails.
>>>>>
>>>> Fixes: 468a93898a97 ("s390x/pci: pass the retaddr to all PCI instructions")
>>>>
>>>>> Signed-off-by: Thomas Huth <address@hidden>
>>>>> ---
>>>>>  hw/s390x/s390-pci-stub.c | 16 +++++++++-------
>>>>>  1 file changed, 9 insertions(+), 7 deletions(-)
>>>> This file seems to be in danger of bitrot. Do you think it'll be easier
>>>> to test rarely used configs like that after we switch to Kconfig?
>>> I hope so, yes. There will be a new --without-default-devices options
>>> for "configure" (which matches "make allnoconfig" from the kernel) - if
>>> we do it right in the Kconfig file for s390x, it should be possible to
>>> catch this problem with that option.
>>
>> Yes, it will be in .travis.yml too.
>>
>> Right now there is a "select PCI" in the hw/s390x/Kconfig file, but
>> probably it's best to add a config S390_ZPCI with "default y if
>> S390_CCW_VIRTIO" and "select PCI" in it.  Not a blocker, but I can
>> integrate it if you send me a fixup patch.
> 
> Yes, that's what I had in mind, too. I'll send a fixup patch...

Actually, disabling the s390-pci code works from a compiling+linking
point of view, but when you then try to start the machine, it fails:

$ s390x-softmmu/qemu-system-s390x -nographic
qemu-system-s390x: Unknown device 's390-pcihost' for default sysbus
Aborted (core dumped)

IIRC we originally wanted to make the "s390-pcihost" device really
optional, but then decided not to do it since it would break migration.
So the status of the "PCI disablement" got stuck somewhere inbetween,
where we've created the switch for the Makefile and the stub file, but
never really got it to a point where it could really really be disabled.

So I see two options now:

1) Finally really make the device optional, at least for new machine
types, so we can really disable CONFIG_PCI and get a working executable.

2) Scratch the idea completely to make this optional, always link the
s390-pci-bus.o and s390-pci-inst.o files unconditionally, and remove the
s390-pci-stub.c file.

I assume options 2 is preferred, since we likely rather want to move
into the PCI direction in the long run, instead of ignoring it...

Other opinions?

 Thomas



reply via email to

[Prev in Thread] Current Thread [Next in Thread]