On 03/21/2013 09:26 AM, Michael S. Tsirkin wrote:
>>>
>>> Thanks. Same place in latest 3.0:
>>>     A PCI Express Endpoint must not depend on operating system allocation of
>>>     I/O resources claimed through BAR(s).
>>>     A PCI Express Endpoint must not generate I/O Requests.
>>> of course this only applies to express :)
>>>
>>
>> And it does... but it has implications for the OS resource manager that
>> if Linux violates, we need to fix it.  We should not fail a device in
>> generic code because an I/O BAR allocation fails.  The device driver may
>> opt to fail the allocation.
>>
>> (Note that having an I/O BAR is not *generating* an I/O request.)
> 
> Right. So if I read this literally, I should be able to boot
> from the device even if it does not have an I/O BAR,
> and BIOS really should not assume it has an I/O BAR option,
> and if as you suggest it can't use MMIO, what is left?
> config cycles.
> 
> So coming back to the issue that started it all,
> BIOS will be able to boot without I/O BAR, no good
> reasons to have any capabilities pointing at I/O BARs,
> so no need for duplicate capabilities?
> 

First of all, you appear to be deliberately overinterpreting -- the BIOS
is the resource manager here, so it can obviously make sure the I/O
resource is available to the boot device.

The performance argument, though, which is the more important one, still
remains, so your conclusion is invalid.

        -hpa

_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to