Subject: Re: linux-next: build failure after merge of the dma-mapping tree

From: Alexander Lobakin <[email-masked]>
Date: Wed, 8 May 2024 10:51:28 +0200

From: Christoph Hellwig <[email-masked]>
Date: Wed, 8 May 2024 08:51:02 +0200

> On Wed, May 08, 2024 at 09:16:31AM +1000, Stephen Rothwell wrote:
>> Hi all,
>>
>> After merging the dma-mapping tree, today's linux-next build (x86_64
>> allmodconfig) failed like this:
> 
> Thanks.  I'll fold in the patch below to drop two consts for now.
> Alexander, if you want to pass the consts through we'll also need to
> modify page_pool_get_dma_addr, which looks doable.  If you want that,
> please send an incremental patch.

I'm verry sorry for that. I had 2 trees, one with const get_dma_addr()
and dma-for-next without const, and didn't check it compiles after
rebasing >_<

net-next already has this const. We could leave it as in your attached
patch, but then there'll be a trivial conflict when merging with
net-next. Or I can send an incremental quick fix for dma-for-next, but
then 2 commits (one in your tree and one in net-next) will have these
changes duplicated.
What do you think?

> 
> diff --git a/net/core/page_pool.c b/net/core/page_pool.c
> index 8836aaaf23855f..4f9d1bd7f4d187 100644
> --- a/net/core/page_pool.c
> +++ b/net/core/page_pool.c
> @@ -399,7 +399,7 @@ static struct page *__page_pool_get_cached(struct page_pool *pool)
>  }
>  
>  static void __page_pool_dma_sync_for_device(const struct page_pool *pool,
> -					    const struct page *page,
> +					    struct page *page,
>  					    u32 dma_sync_size)
>  {
>  #if defined(CONFIG_HAS_DMA) && defined(CONFIG_DMA_NEED_SYNC)
> @@ -413,7 +413,7 @@ static void __page_pool_dma_sync_for_device(const struct page_pool *pool,
>  
>  static __always_inline void
>  page_pool_dma_sync_for_device(const struct page_pool *pool,
> -			      const struct page *page,
> +			      struct page *page,
>  			      u32 dma_sync_size)
>  {
>  	if (pool->dma_sync && dma_dev_need_sync(pool->p.dev))

Thanks,
Olek