Thread (17 messages) 17 messages, 5 authors, 2010-03-02

Re: [RFC PATCH] fix problems with NETIF_F_HIGHDMA in networking drivers

From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Date: 2010-02-27 12:00:41
Also in: lkml

On Saturday 27 February 2010 10:53:50 am David Miller wrote:
From: Robert Hancock <redacted>
Date: Fri, 26 Feb 2010 21:08:04 -0600
quoted
That seems like a reasonable approach to me. Only question is how to
implement the check for DMA_64BIT. Can we just check page_to_phys on
each of the pages in the skb to see if it's > 0xffffffff ? Are there
any architectures where it's more complicated than that?
On almost every platform it's "more complicated than that".
Mildly speaking, I see the real problem now and it is much higher in
the software stack than networking..
This is the whole issue.  What matters is the final DMA address and
since we have IOMMUs and the like, it is absolutely not tenable to
solve this by checking physical address attributes.
What's more we may not have IOMMU in place which creates really interesting
scenarios for HIGHMEM=y and results in all kind of wonderful band-aids in
particular device drivers.

Having IOMMU (even if it is only a software one, i.e. this would mean
swiotlb for x86-32/highmem) always in place would simplify things greatly..

--
Bartlomiej Zolnierkiewicz
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help