qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] sysbus: add no_user for devices using mmio or I


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH] sysbus: add no_user for devices using mmio or IRQ or GPIO
Date: Thu, 07 Mar 2013 18:45:10 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1 (gnu/linux)

Anthony Liguori <address@hidden> writes:

> Markus Armbruster <address@hidden> writes:
>
>> Anthony Liguori <address@hidden> writes:
>>
>>> Markus Armbruster <address@hidden> writes:
>>>
>>>> Peter Maydell <address@hidden> writes:
>>>>>>>                          [and I don't think "this device
>>>>>>> can be added via the monitor but not the command line"
>>>>>>> counts as consistent or coherent...]
>>>>>>
>>>>>> no_user applies equally to -device and device_add.
>>>>>
>>>>> In the codebase as it stands, it applies only to -device.
>>>>> I agree that we should be consistent here, which we could do
>>>>> by applying Christian's patch or some variation to make device_add
>>>>> honour no_user. (Or by removing no_user altogether :-))
>>>>
>>>> Actually, it appears to apply only to help now!
>>>>
>>>> git-bisect blames this one:
>>>
>>> Let's step back and try to figure out the problem we're trying to solve.
>>>
>>> What is -devices help trying to show?  Devices that are valid to for a
>>> user to pass?  Hint: on a PC, the only thing that's valid to add are
>>> devices that implement a certain bus type.  In fact, it depends on the
>>> bus model.
>>>
>>> So if you want to make -device help prettier, we should add a filter
>>> that looks at the busses available and filters anything that isn't an
>>> instance of the appropriate bus types.
>>
>> Necessary, but not sufficient; see the two examples I posted upstream.
>> Both devices would pass a "appropriate bus is available" filter.  Both
>> devices cannot possibly work.  One of them starts up fine (mayhem at
>> guest runtime expected),
>
> Note that what you've done with the first one is 100% representative of
> real hardware.  ISA bus conflicts are part of the nature of ISA and
> why it was such an awful bus.

Would be nice if we could make QEMU behave less awful.

>> the other makes qemu crash & burn immediately.
>
> This is a modeling problem.  It doesn't make sense for q35-pcihost
> to be a PCIDevice.  It's not a PCI device.
>
> But even so, segv'ing is always a bug and we ought to prevent it from
> seg faulting.  no_user to hide a SEGV is just using a bandaid.

A bandaid isn't half bad when you're bleeding :)



reply via email to

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