mm: add dma_addr_t to struct page
The page_pool API is using page->private to store DMA addresses. As pointed out by David Miller we can't use that on 32-bit architectures with 64-bit DMA This patch adds a new dma_addr_t struct to allow storing DMA addresses Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Acked-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
fb14b09635
Коммит
c25fff7171
|
@ -95,6 +95,13 @@ struct page {
|
||||||
*/
|
*/
|
||||||
unsigned long private;
|
unsigned long private;
|
||||||
};
|
};
|
||||||
|
struct { /* page_pool used by netstack */
|
||||||
|
/**
|
||||||
|
* @dma_addr: might require a 64-bit value even on
|
||||||
|
* 32-bit architectures.
|
||||||
|
*/
|
||||||
|
dma_addr_t dma_addr;
|
||||||
|
};
|
||||||
struct { /* slab, slob and slub */
|
struct { /* slab, slob and slub */
|
||||||
union {
|
union {
|
||||||
struct list_head slab_list; /* uses lru */
|
struct list_head slab_list; /* uses lru */
|
||||||
|
|
Загрузка…
Ссылка в новой задаче