Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ee656e9d authored by Samuel Ortiz's avatar Samuel Ortiz
Browse files

NFC: Remove and free all SEs when releasing an NFC device

parent 2757c372
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -820,11 +820,19 @@ EXPORT_SYMBOL(nfc_remove_se);
static void nfc_release(struct device *d)
{
	struct nfc_dev *dev = to_nfc_dev(d);
	struct nfc_se *se, *n;

	pr_debug("dev_name=%s\n", dev_name(&dev->dev));

	nfc_genl_data_exit(&dev->genl_data);
	kfree(dev->targets);

	list_for_each_entry_safe(se, n, &dev->secure_elements, list) {
			nfc_genl_se_removed(dev, se->idx);
			list_del(&se->list);
			kfree(se);
	}

	kfree(dev);
}