Subject: linux-next: manual merge of the ipsec-next tree with the net-next tree

From: Stephen Rothwell <[email-masked]>
Date: Thu, 8 Sep 2022 11:59:14 +1000

Hi all,

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

  include/net/dst_metadata.h

between commit:

  0a28bfd4971f ("net/macsec: Add MACsec skb_metadata_dst Tx Data path support")

from the net-next tree and commit:

  5182a5d48c3d ("net: allow storing xfrm interface metadata in metadata_dst")

from the ipsec-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.

-- 
Cheers,
Stephen Rothwell

diff --cc include/net/dst_metadata.h
index 22a6924bf6da,57f75960fa28..000000000000
--- a/include/net/dst_metadata.h
+++ b/include/net/dst_metadata.h
@@@ -10,7 -9,7 +10,8 @@@
  enum metadata_type {
  	METADATA_IP_TUNNEL,
  	METADATA_HW_PORT_MUX,
 +	METADATA_MACSEC,
+ 	METADATA_XFRM,
  };
  
  struct hw_port_info {
@@@ -18,17 -17,18 +19,23 @@@
  	u32 port_id;
  };
  
 +struct macsec_info {
 +	sci_t sci;
 +};
 +
+ struct xfrm_md_info {
+ 	u32 if_id;
+ 	int link;
+ };
+ 
  struct metadata_dst {
  	struct dst_entry		dst;
  	enum metadata_type		type;
  	union {
  		struct ip_tunnel_info	tun_info;
  		struct hw_port_info	port_info;
 +		struct macsec_info	macsec_info;
+ 		struct xfrm_md_info	xfrm_info;
  	} u;
  };
  
@@@ -89,9 -110,9 +117,12 @@@ static inline int skb_metadata_dst_cmp(
  		return memcmp(&a->u.tun_info, &b->u.tun_info,
  			      sizeof(a->u.tun_info) +
  					 a->u.tun_info.options_len);
 +	case METADATA_MACSEC:
 +		return memcmp(&a->u.macsec_info, &b->u.macsec_info,
 +			      sizeof(a->u.macsec_info));
+ 	case METADATA_XFRM:
+ 		return memcmp(&a->u.xfrm_info, &b->u.xfrm_info,
+ 			      sizeof(a->u.xfrm_info));
  	default:
  		return 1;
  	}