commit 7a534ae89e34e9b51acb5a63dd0f88308178b46a upstream.
struct rpmsg_eptdev contains a struct cdev. The current code frees
the rpmsg_eptdev struct in rpmsg_eptdev_destroy(), but the cdev is
a managed object, therefore its release is not predictable and the
rpmsg_eptdev could be freed before the cdev is entirely released.
The cdev_device_add/del() API was created to address this issue
(see commit '233ed09d7fda ("chardev: add helper function to register
char devs with a struct device")'), use it instead of cdev add/del().
Fixes:
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| mtk_rpmsg.c | ||
| qcom_glink_native.c | ||
| qcom_glink_native.h | ||
| qcom_glink_rpm.c | ||
| qcom_glink_smem.c | ||
| qcom_glink_ssr.c | ||
| qcom_smd.c | ||
| rpmsg_char.c | ||
| rpmsg_core.c | ||
| rpmsg_internal.h | ||
| virtio_rpmsg_bus.c | ||