[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200324203109.71e1efc6@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date: Tue, 24 Mar 2020 20:31:09 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Ido Schimmel <idosch@...sch.org>
Cc: netdev@...r.kernel.org, davem@...emloft.net, jiri@...lanox.com,
andrew@...n.ch, f.fainelli@...il.com, vivien.didelot@...il.com,
roopa@...ulusnetworks.com, nikolay@...ulusnetworks.com,
mlxsw@...lanox.com, Ido Schimmel <idosch@...lanox.com>
Subject: Re: [PATCH net-next 01/15] devlink: Add packet trap policers
support
On Tue, 24 Mar 2020 21:32:36 +0200 Ido Schimmel wrote:
> +/**
> + * devlink_trap_policers_register - Register packet trap policers with devlink.
> + * @devlink: devlink.
> + * @policers: Packet trap policers.
> + * @policers_count: Count of provided packet trap policers.
> + *
> + * Return: Non-zero value on failure.
> + */
> +int
> +devlink_trap_policers_register(struct devlink *devlink,
> + const struct devlink_trap_policer *policers,
> + size_t policers_count)
> +{
> + int i, err;
> +
> + mutex_lock(&devlink->lock);
> + for (i = 0; i < policers_count; i++) {
> + const struct devlink_trap_policer *policer = &policers[i];
> +
> + if (WARN_ON(policer->id == 0)) {
> + err = -EINVAL;
> + goto err_trap_policer_verify;
> + }
> +
> + err = devlink_trap_policer_register(devlink, policer);
> + if (err)
> + goto err_trap_policer_register;
> + }
> + mutex_unlock(&devlink->lock);
> +
> + return 0;
> +
> +err_trap_policer_register:
> +err_trap_policer_verify:
nit: as you probably know the label names are not really in compliance
with:
https://www.kernel.org/doc/html/latest/process/coding-style.html#centralized-exiting-of-functions
;)
> + for (i--; i >= 0; i--)
> + devlink_trap_policer_unregister(devlink, &policers[i]);
> + mutex_unlock(&devlink->lock);
> + return err;
> +}
> +EXPORT_SYMBOL_GPL(devlink_trap_policers_register);
Powered by blists - more mailing lists