public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* linux-next: manual merge of the net-next tree with the mm-unstable tree
@ 2026-02-27 13:54 Mark Brown
  2026-03-03  7:20 ` Byungchul Park
  0 siblings, 1 reply; 2+ messages in thread
From: Mark Brown @ 2026-02-27 13:54 UTC (permalink / raw)
  To: David Miller, Jakub Kicinski, Paolo Abeni, Networking
  Cc: Andrew Morton, Byungchul Park, Linux Kernel Mailing List,
	Linux Next Mailing List, Pavel Begunkov

[-- Attachment #1: Type: text/plain, Size: 2004 bytes --]

Hi all,

Today's linux-next merge of the net-next tree got a conflict in:

  include/net/netmem.h

between commit:

  0a8a9198a887f ("mm: introduce a new page type for page pool in page type")

from the mm-unstable tree and commit:

  fd6dad4e1ae29 ("netmem: remove the pp fields from net_iov")

from the net-next tree.

I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging.  You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.

diff --cc include/net/netmem.h
index 85e3b26ec547f,a6d65ced52315..0000000000000
--- a/include/net/netmem.h
+++ b/include/net/netmem.h
@@@ -93,38 -93,11 +93,21 @@@ enum net_iov_type 
   *		supported.
   */
  struct net_iov {
- 	union {
- 		struct netmem_desc desc;
- 
- 		/* XXX: The following part should be removed once all
- 		 * the references to them are converted so as to be
- 		 * accessed via netmem_desc e.g. niov->desc.pp instead
- 		 * of niov->pp.
- 		 */
- 		struct {
- 			unsigned long _flags;
- 			unsigned long pp_magic;
- 			struct page_pool *pp;
- 			unsigned long _pp_mapping_pad;
- 			unsigned long dma_addr;
- 			atomic_long_t pp_ref_count;
- 		};
- 	};
- 
+ 	struct netmem_desc desc;
 -	struct net_iov_area *owner;
 +	unsigned int page_type;
  	enum net_iov_type type;
 +	struct net_iov_area *owner;
  };
  
 +/* Make sure 'the offset of page_type in struct page == the offset of
 + * type in struct net_iov'.
 + */
 +#define NET_IOV_ASSERT_OFFSET(pg, iov)			\
 +	static_assert(offsetof(struct page, pg) ==	\
 +		      offsetof(struct net_iov, iov))
 +NET_IOV_ASSERT_OFFSET(page_type, page_type);
 +#undef NET_IOV_ASSERT_OFFSET
 +
  struct net_iov_area {
  	/* Array of net_iovs for this area. */
  	struct net_iov *niovs;

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: linux-next: manual merge of the net-next tree with the mm-unstable tree
  2026-02-27 13:54 linux-next: manual merge of the net-next tree with the mm-unstable tree Mark Brown
@ 2026-03-03  7:20 ` Byungchul Park
  0 siblings, 0 replies; 2+ messages in thread
From: Byungchul Park @ 2026-03-03  7:20 UTC (permalink / raw)
  To: Mark Brown, Andrew Morton, Jakub Kicinski
  Cc: David Miller, Paolo Abeni, Networking, Linux Kernel Mailing List,
	Linux Next Mailing List, Pavel Begunkov, kernel_team

On Fri, Feb 27, 2026 at 01:54:20PM +0000, Mark Brown wrote:
> Hi all,
> 
> Today's linux-next merge of the net-next tree got a conflict in:
> 
>   include/net/netmem.h
> 
> between commit:
> 
>   0a8a9198a887f ("mm: introduce a new page type for page pool in page type")
> 
> from the mm-unstable tree and commit:
> 
>   fd6dad4e1ae29 ("netmem: remove the pp fields from net_iov")
> 
> from the net-next tree.
> 
> I fixed it up (see below) and can carry the fix as necessary. This

Indeed.  Thanks for the fixing and informing that.  I should've paid
more attention.

To Andrew and Jakub,

Sorry about the confict.  Fortunately, this is a trivial conflict.
However, if I should drop one, commit fd6dad4e1ae29 ("netmem: remove the
pp fields from net_iov") should be dropped this time.  And then I will
re-work once net-next tree can see the mm's changes.

Or it'd be appreciated to tell me what I should do else for the issue.

	Byungchul

> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging.  You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
> 
> diff --cc include/net/netmem.h
> index 85e3b26ec547f,a6d65ced52315..0000000000000
> --- a/include/net/netmem.h
> +++ b/include/net/netmem.h
> @@@ -93,38 -93,11 +93,21 @@@ enum net_iov_type 
>    *		supported.
>    */
>   struct net_iov {
> - 	union {
> - 		struct netmem_desc desc;
> - 
> - 		/* XXX: The following part should be removed once all
> - 		 * the references to them are converted so as to be
> - 		 * accessed via netmem_desc e.g. niov->desc.pp instead
> - 		 * of niov->pp.
> - 		 */
> - 		struct {
> - 			unsigned long _flags;
> - 			unsigned long pp_magic;
> - 			struct page_pool *pp;
> - 			unsigned long _pp_mapping_pad;
> - 			unsigned long dma_addr;
> - 			atomic_long_t pp_ref_count;
> - 		};
> - 	};
> - 
> + 	struct netmem_desc desc;
>  -	struct net_iov_area *owner;
>  +	unsigned int page_type;
>   	enum net_iov_type type;
>  +	struct net_iov_area *owner;
>   };
>   
>  +/* Make sure 'the offset of page_type in struct page == the offset of
>  + * type in struct net_iov'.
>  + */
>  +#define NET_IOV_ASSERT_OFFSET(pg, iov)			\
>  +	static_assert(offsetof(struct page, pg) ==	\
>  +		      offsetof(struct net_iov, iov))
>  +NET_IOV_ASSERT_OFFSET(page_type, page_type);
>  +#undef NET_IOV_ASSERT_OFFSET
>  +
>   struct net_iov_area {
>   	/* Array of net_iovs for this area. */
>   	struct net_iov *niovs;



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-03-03  7:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-27 13:54 linux-next: manual merge of the net-next tree with the mm-unstable tree Mark Brown
2026-03-03  7:20 ` Byungchul Park

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox