|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] PCI Passthrough ARM Design : Draft1
On Wednesday 17 June 2015 07:59 PM, Ian Campbell wrote: While implementing I think rather than the toolstack, pciback driver in dom0 can send theOn Wed, 2015-06-17 at 07:14 -0700, Manish Jaggi wrote:On Wednesday 17 June 2015 06:43 AM, Ian Campbell wrote:On Wed, 2015-06-17 at 13:58 +0100, Stefano Stabellini wrote:Yes, pciback is already capable of doing that, see drivers/xen/xen-pciback/conf_space.cI am not sure if the pci-back driver can query the guest memory map. Is there an existing hypercall ?No, that is missing. I think it would be OK for the virtual BAR to be initialized to the same value as the physical BAR. But I would let the guest change the virtual BAR address and map the MMIO region wherever it wants in the guest physical address space with XENMEM_add_to_physmap_range.I disagree, given that we've apparently survived for years with x86 PV guests not being able to right to the BARs I think it would be far simpler to extend this to ARM and x86 PVH too than to allow guests to start writing BARs which has various complex questions around it. All that's needed is for the toolstack to set everything up and write some new xenstore nodes in the per-device directory with the BAR address/size. Also most guests apparently don't reassign the PCI bus by default, so using a 1:1 by default and allowing it to be changed would require modifying the guests to reasssign. Easy on Linux, but I don't know about others and I imagine some OSes (especially simpler/embedded ones) are assuming the firmware sets up something sane by default. hypercall by to map the physical bar to virtual bar.Thus no xenstore entry is required for BARs. Moreover a pci driver would read BARs only once. c) domU will not anytime update the BARs, if it does then it is a fault, till we decide how to handle itAs Julien has noted pciback already deals with this correctly, because sizing a BAR involves a write, it implementes a scheme which allows either the hardcoded virtual BAR to be written or all 1s (needed for size detection). _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |