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

Re: [Xen-devel] Can I specify a physical memory region for a domU

On Thu, Sep 8, 2011 at 11:12 AM, Konrad Rzeszutek Wilk
<konrad.wilk@xxxxxxxxxx> wrote:
> On Thu, Sep 08, 2011 at 10:22:01AM -0700, Eric Camachat wrote:
>> On Thu, Sep 8, 2011 at 5:59 AM, Konrad Rzeszutek Wilk
>> <konrad.wilk@xxxxxxxxxx> wrote:
>> > On Wed, Sep 07, 2011 at 05:47:46PM -0700, Eric Camachat wrote:
>> >> Hi,
>> >>
>> >> I am porting our drivers to XEN's PV domU (with PV PCI passthrouth), I
>> >
>> > Use the DMA API that Linux provides (I presume that is what you meant
>> > by PV DomU), and use the dma_alloc_coherent to set your regions.
>> That's what I thought before. We use a shared DMA region for multiple 
>> hardware.
>> Maybe I can dma_alloc_coherent for 1st and the others use the same region.
> You can definitly try it. Or use the dmapool API to get a shared
> pool of coherent memory.
>> I will try it.
>> >
>> > Also pass in 'iommu=soft' on your Linux command line to enable the
>> > Xen SWIOTLB DMA system.
>> >
>> >> have to allocate a memory block and tell the hardware to access it.
>> >> But the hardware can address 32-bit only, so I want dedicate a region
>> >> of memory that below 2GB for the domU only.
>> >
>> > Uh, don't you mean 4GB? - 32bit is up to 4GB.
>> The hardware uses 32-bit addressing, but the system will crash if I
>> assigned above 2GB address to it.
> Ha! so buggy hardware.. or you are not using the XEn-SWIOTLB but something
> else.
>> So, 4GB from hardware spec, 2GB from my test. I am looking into that.
> Make sure you set
> Âpci_set_consistent_dma_mask(dev, DMA_BIT_MASK(31));
> on top of pci_set_dma_mask(dev, DMA_BIT_MASK(31));
> in your driver.
A lot of work to port the driver to PV domU, hope it works.
Thanks for your help!

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.