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

Commit 022321aa authored by Wen Yang's avatar Wen Yang Committed by Greg Kroah-Hartman
Browse files

platform/chrome: wilco_ec: fix use after free issue



[ Upstream commit 856a0a6e2d09d31fd8f00cc1fc6645196a509d56 ]

This is caused by dereferencing 'dev_data' after put_device() in
the telem_device_remove() function.
This patch just moves the put_device() down a bit to avoid this
issue.

Fixes: 1210d1e6 ("platform/chrome: wilco_ec: Add telemetry char device interface")
Signed-off-by: default avatarWen Yang <wenyang@linux.alibaba.com>
Cc: Benson Leung <bleung@chromium.org>
Cc: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Cc: Nick Crews <ncrews@chromium.org>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: default avatarEnric Balletbo i Serra <enric.balletbo@collabora.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 074fd02d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -406,8 +406,8 @@ static int telem_device_remove(struct platform_device *pdev)
	struct telem_device_data *dev_data = platform_get_drvdata(pdev);

	cdev_device_del(&dev_data->cdev, &dev_data->dev);
	put_device(&dev_data->dev);
	ida_simple_remove(&telem_ida, MINOR(dev_data->dev.devt));
	put_device(&dev_data->dev);

	return 0;
}