|
From: | Anthony Liguori |
Subject: | Re: [Qemu-devel] [PATCH 2 of 5] add can_dma/post_dma for direct IO |
Date: | Fri, 12 Dec 2008 13:18:43 -0600 |
User-agent: | Thunderbird 2.0.0.17 (X11/20080925) |
Blue Swirl wrote:
On 12/12/08, Andrea Arcangeli <address@hidden> wrote:From: Andrea Arcangeli <address@hidden> Add can_dma and post_dma methods needed before/after direct IO to guest physical memory. Signed-off-by: Andrea Arcangeli <address@hidden>+ /* nonlinear range */ + if (pd_first != pd) + return NULL;In my tests on Sparc32, IOMMU can map a linear DVMA range to several non-linear physical pages, so this case should be handled correctly.
I think we should go back to Fabrice's earliest suggestion here. We should just have a simple map/unmap lock/unlock API for physical memory. That should be the base API IMHO.
As long the map function goes from guest physical => host virtual, it can work for everything we care about.
This is orthogonal to an API dealing with scatter/gather lists and translation to and from them.
Regards, Anthony Liguori
[Prev in Thread] | Current Thread | [Next in Thread] |