diff options
Diffstat (limited to 'drivers/net/macsec.c')
| -rw-r--r-- | drivers/net/macsec.c | 49 | 
1 files changed, 27 insertions, 22 deletions
diff --git a/drivers/net/macsec.c b/drivers/net/macsec.c index d2e61e002926..f83cf6696820 100644 --- a/drivers/net/macsec.c +++ b/drivers/net/macsec.c @@ -1431,14 +1431,7 @@ static void clear_tx_sa(struct macsec_tx_sa *tx_sa)  	macsec_txsa_put(tx_sa);  } -static struct genl_family macsec_fam = { -	.id		= GENL_ID_GENERATE, -	.name		= MACSEC_GENL_NAME, -	.hdrsize	= 0, -	.version	= MACSEC_GENL_VERSION, -	.maxattr	= MACSEC_ATTR_MAX, -	.netnsok	= true, -}; +static struct genl_family macsec_fam;  static struct net_device *get_dev_from_nl(struct net *net,  					  struct nlattr **attrs) @@ -2665,6 +2658,17 @@ static const struct genl_ops macsec_genl_ops[] = {  	},  }; +static struct genl_family macsec_fam __ro_after_init = { +	.name		= MACSEC_GENL_NAME, +	.hdrsize	= 0, +	.version	= MACSEC_GENL_VERSION, +	.maxattr	= MACSEC_ATTR_MAX, +	.netnsok	= true, +	.module		= THIS_MODULE, +	.ops		= macsec_genl_ops, +	.n_ops		= ARRAY_SIZE(macsec_genl_ops), +}; +  static netdev_tx_t macsec_start_xmit(struct sk_buff *skb,  				     struct net_device *dev)  { @@ -2980,6 +2984,8 @@ static void macsec_free_netdev(struct net_device *dev)  static void macsec_setup(struct net_device *dev)  {  	ether_setup(dev); +	dev->min_mtu = 0; +	dev->max_mtu = ETH_MAX_MTU;  	dev->priv_flags |= IFF_NO_QUEUE;  	dev->netdev_ops = &macsec_netdev_ops;  	dev->destructor = macsec_free_netdev; @@ -3340,19 +3346,18 @@ static struct net *macsec_get_link_net(const struct net_device *dev)  static size_t macsec_get_size(const struct net_device *dev)  { -	return 0 + -		nla_total_size_64bit(8) + /* SCI */ -		nla_total_size(1) + /* ICV_LEN */ -		nla_total_size_64bit(8) + /* CIPHER_SUITE */ -		nla_total_size(4) + /* WINDOW */ -		nla_total_size(1) + /* ENCODING_SA */ -		nla_total_size(1) + /* ENCRYPT */ -		nla_total_size(1) + /* PROTECT */ -		nla_total_size(1) + /* INC_SCI */ -		nla_total_size(1) + /* ES */ -		nla_total_size(1) + /* SCB */ -		nla_total_size(1) + /* REPLAY_PROTECT */ -		nla_total_size(1) + /* VALIDATION */ +	return  nla_total_size_64bit(8) + /* IFLA_MACSEC_SCI */ +		nla_total_size(1) + /* IFLA_MACSEC_ICV_LEN */ +		nla_total_size_64bit(8) + /* IFLA_MACSEC_CIPHER_SUITE */ +		nla_total_size(4) + /* IFLA_MACSEC_WINDOW */ +		nla_total_size(1) + /* IFLA_MACSEC_ENCODING_SA */ +		nla_total_size(1) + /* IFLA_MACSEC_ENCRYPT */ +		nla_total_size(1) + /* IFLA_MACSEC_PROTECT */ +		nla_total_size(1) + /* IFLA_MACSEC_INC_SCI */ +		nla_total_size(1) + /* IFLA_MACSEC_ES */ +		nla_total_size(1) + /* IFLA_MACSEC_SCB */ +		nla_total_size(1) + /* IFLA_MACSEC_REPLAY_PROTECT */ +		nla_total_size(1) + /* IFLA_MACSEC_VALIDATION */  		0;  } @@ -3470,7 +3475,7 @@ static int __init macsec_init(void)  	if (err)  		goto notifier; -	err = genl_register_family_with_ops(&macsec_fam, macsec_genl_ops); +	err = genl_register_family(&macsec_fam);  	if (err)  		goto rtnl;  |