On Fri, Aug 18, 2023 at 08:02:53PM -0700, Jakub Kicinski wrote: > On Sun, 13 Aug 2023 09:47:03 +0300 Leon Romanovsky wrote: > > This PR is collected from https://lore.kernel.org/all/cover.1691569414.git.leon@xxxxxxxxxx > > and contains patches to support mlx5 MACsec RoCEv2. > > +bool macsec_netdev_is_offloaded(struct net_device *dev) > +{ > + if (!dev) > + return false; > + > + return macsec_is_offloaded(macsec_priv(dev)); > +} > +EXPORT_SYMBOL_GPL(macsec_netdev_is_offloaded); > > No defensive programming, please, why are you checking that dev is NULL? I missed that in CR, dev is always valid for all macsec_netdev_is_offloaded() callers 240 ndev = rcu_dereference(attr->ndev); 241 if (!ndev) { 242 rcu_read_unlock(); 243 return -ENODEV; 244 } 245 246 if (!netif_is_macsec(ndev) || !macsec_netdev_is_offloaded(ndev)) { 247 rcu_read_unlock(); 248 return 0; 249 } > > > It is based on -rc4 and such has minor conflict with net-next due to > > existance of IPsec packet offlosd in eswitch code and the resolution > > is to take both hunks. > > > > diff --cc include/linux/mlx5/driver.h > > index 25d0528f9219,3ec8155c405d..000000000000 > > --- a/include/linux/mlx5/driver.h > > +++ b/include/linux/mlx5/driver.h > > @@@ -805,6 -806,11 +805,14 @@@ struct mlx5_core_dev > > u32 vsc_addr; > > struct mlx5_hv_vhca *hv_vhca; > > struct mlx5_thermal *thermal; > > + u64 num_block_tc; > > + u64 num_block_ipsec; > > + #ifdef CONFIG_MLX5_MACSEC > > + struct mlx5_macsec_fs *macsec_fs; > > + #endif > > }; > > > > struct mlx5_db { > > That's not how the resolution looks. Do the merge yourself, then show > the actual 3-way resolution. ok, will do. Thanks