Subject: Re: [patch net-next] bonding: add slave netlink policy and put slave-related ops together

From: Nikolay Aleksandrov <[email-masked]>
Date: Fri, 05 Sep 2014 12:21:06 +0200

On 05/09/14 11:36, Jiri Pirko wrote:
> Signed-off-by: Jiri Pirko <[email-masked]>
> ---
>   drivers/net/bonding/bond_netlink.c | 9 +++++++--
>   1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/bonding/bond_netlink.c b/drivers/net/bonding/bond_netlink.c
> index 1570dea..e1489d9 100644
> --- a/drivers/net/bonding/bond_netlink.c
> +++ b/drivers/net/bonding/bond_netlink.c
> @@ -96,6 +96,10 @@ static const struct nla_policy bond_policy[IFLA_BOND_MAX + 1] = {
>   	[IFLA_BOND_AD_INFO]		= { .type = NLA_NESTED },
>   };
>
> +static const struct nla_policy bond_slave_policy[IFLA_BOND_SLAVE_MAX + 1] = {
> +	[IFLA_BOND_SLAVE_QUEUE_ID]	= { .type = NLA_U16 },
> +};
> +
>   static int bond_validate(struct nlattr *tb[], struct nlattr *data[])
>   {
>   	if (tb[IFLA_ADDRESS]) {
> @@ -580,17 +584,18 @@ struct rtnl_link_ops bond_link_ops __read_mostly = {
>   	.priv_size		= sizeof(struct bonding),
>   	.setup			= bond_setup,
>   	.maxtype		= IFLA_BOND_MAX,
> -	.slave_maxtype		= IFLA_BOND_SLAVE_MAX,
>   	.policy			= bond_policy,
>   	.validate		= bond_validate,
>   	.newlink		= bond_newlink,
>   	.changelink		= bond_changelink,
> -	.slave_changelink	= bond_slave_changelink,
>   	.get_size		= bond_get_size,
>   	.fill_info		= bond_fill_info,
>   	.get_num_tx_queues	= bond_get_num_tx_queues,
>   	.get_num_rx_queues	= bond_get_num_tx_queues, /* Use the same number
>   							     as for TX queues */
> +	.slave_maxtype		= IFLA_BOND_SLAVE_MAX,
> +	.slave_policy		= bond_slave_policy,
> +	.slave_changelink	= bond_slave_changelink,
>   	.get_slave_size		= bond_get_slave_size,
>   	.fill_slave_info	= bond_fill_slave_info,
>   };
>

Right, the validation policy, I knew I forgot something :-)

Acked-by: Nikolay Aleksandrov <[email-masked]>