Commit 5e64f59a authored by Yang Yingliang's avatar Yang Yingliang Committed by Jakub Kicinski
Browse files

net: microchip: vcap: use kmemdup() to allocate memory



Use kmemdup() helper instead of open-coding to simplify
the code when allocating newckf and newcaf.

Generated by: scripts/coccinelle/api/memdup.cocci

Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
Reviewed-by: default avatarJesse Brandeburg <jesse.brandeburg@intel.com>
Reviewed-by: default avatarSteen Hegelund <Steen.Hegelund@microchip.com>
Link: https://lore.kernel.org/r/20230119092210.3607634-1-yangyingliang@huawei.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent bad5532e
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -1000,18 +1000,16 @@ static struct vcap_rule_internal *vcap_dup_rule(struct vcap_rule_internal *ri,
		return duprule;

	list_for_each_entry(ckf, &ri->data.keyfields, ctrl.list) {
		newckf = kzalloc(sizeof(*newckf), GFP_KERNEL);
		newckf = kmemdup(ckf, sizeof(*newckf), GFP_KERNEL);
		if (!newckf)
			return ERR_PTR(-ENOMEM);
		memcpy(newckf, ckf, sizeof(*newckf));
		list_add_tail(&newckf->ctrl.list, &duprule->data.keyfields);
	}

	list_for_each_entry(caf, &ri->data.actionfields, ctrl.list) {
		newcaf = kzalloc(sizeof(*newcaf), GFP_KERNEL);
		newcaf = kmemdup(caf, sizeof(*newcaf), GFP_KERNEL);
		if (!newcaf)
			return ERR_PTR(-ENOMEM);
		memcpy(newcaf, caf, sizeof(*newcaf));
		list_add_tail(&newcaf->ctrl.list, &duprule->data.actionfields);
	}