devlink: convert snapshot destructor callback to region op

It does not makes sense that two snapshots for a given region would use
different destructors. Simplify snapshot creation by adding
a .destructor op for regions.

This operation will replace the data_destructor for the snapshot
creation, and makes snapshot creation easier.

Noticed-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Reviewed-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Jacob Keller
2020-03-26 11:37:09 -07:00
committed by David S. Miller
parent e893768179
commit a0a09f6bb2
4 changed files with 14 additions and 13 deletions
+2 -1
View File
@@ -56,7 +56,7 @@ static ssize_t nsim_dev_take_snapshot_write(struct file *file,
id = devlink_region_snapshot_id_get(priv_to_devlink(nsim_dev));
err = devlink_region_snapshot_create(nsim_dev->dummy_region,
dummy_data, id, kfree);
dummy_data, id);
if (err) {
pr_err("Failed to create region snapshot\n");
kfree(dummy_data);
@@ -342,6 +342,7 @@ static void nsim_devlink_param_load_driverinit_values(struct devlink *devlink)
static const struct devlink_region_ops dummy_region_ops = {
.name = "dummy",
.destructor = &kfree,
};
static int nsim_dev_dummy_region_init(struct nsim_dev *nsim_dev,