On Mon, 11 Feb 2019 17:06:46 +0100 Jesper Dangaard Brouer <bro...@redhat.com> wrote:
> 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 > > .. > > --- a/include/linux/mm_types.h > +++ b/include/linux/mm_types.h > @@ -95,6 +95,14 @@ struct page { > */ > unsigned long private; > }; > + struct { /* page_pool used by netstack */ > + /** > + * @dma_addr: Page_pool need to store DMA-addr, and > + * cannot use @private, as DMA-mappings can be 64-bit > + * even on 32-bit Architectures. > + */ This comment is a bit awkward. The discussion about why it doesn't use ->private is uninteresting going forward and is more material for a changelog. How about /** * @dma_addr: page_pool requires a 64-bit value even on * 32-bit architectures. */ Otherwise, Acked-by: Andrew Morton <a...@linux-foundation.org>