On 02/28/2013 07:24 AM, Michael S. Tsirkin wrote:
> 
> 3. hypervisor assigned IO address
>       qemu can reserve IO addresses and assign to virtio devices.
>       2 bytes per device (for notification and ISR access) will be
>       enough. So we can reserve 4K and this gets us 2000 devices.
>         From KVM perspective, nothing changes.
>       We'll want some capability in the device to let guest know
>       this is what it should do, and pass the io address.
>       One way to reserve the addresses is by using the bridge.
>       Pros: no need for host kernel support
>       Pros: regular PIO so fast
>       Cons: does not help assigned devices, breaks nested virt
> 
> Simply counting pros/cons, option 3 seems best. It's also the
> easiest to implement.
> 

The problem here is the 4K I/O window for IO device BARs in bridges.
Why not simply add a (possibly proprietary) capability to the PCI bridge
to allow a much narrower window?  That fits much more nicely into the
device resource assignment on the guest side, and could even be
implemented on a real hardware device -- we can offer it to the PCI-SIG
for standardization, even.

        -hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to