diff options
author | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-05-30 10:46:13 +0100 |
---|---|---|
committer | kfraser@localhost.localdomain <kfraser@localhost.localdomain> | 2007-05-30 10:46:13 +0100 |
commit | 403542f9101ebfcb45a881d6be9e8543059e409f (patch) | |
tree | d23591b6947741fcf445f550d5b1d8fc3ddb68b8 /patches/linux-2.6.18/pmd-shared.patch | |
parent | 38d075a82c6ebbe0ae4a3c185f94164aecdc9ba3 (diff) | |
download | xen-403542f9101ebfcb45a881d6be9e8543059e409f.tar.gz xen-403542f9101ebfcb45a881d6be9e8543059e409f.tar.bz2 xen-403542f9101ebfcb45a881d6be9e8543059e409f.zip |
[LINUX] gnttab: Add basic DMA tracking
This patch adds basic tracking of outstanding DMA requests on
grant table entries marked as PageForeign.
When a PageForeign struct page is about to be mapped for DMA,
we set its map count to 1 (or zero in actual value). This is
then checked for when we need to free a grant table entry early
to ensure that we don't free an entry that's currently used for
DMA.
So any entry that has been marked for DMA will not be freed early.
If the unmapping API had a struct page (which exists for the sg
case) then we could do this properly.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'patches/linux-2.6.18/pmd-shared.patch')
0 files changed, 0 insertions, 0 deletions