From 04433509503f121076220fe21109b63b4f1407ff Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 26 Nov 2023 12:55:14 +0000 Subject: [PATCH] ANDROID: fix up rpmsg_device ABI break In commit e70898ae1a42 ("rpmsg: Fix kfree() of static memory on setting driver_override") a pointer was changed to const, which messes with the CRC and ABI checks. As the code is fine if this is left as not-const, just put it back to preserve the abi. Bug: 161946584 Fixes: e70898ae1a42 ("rpmsg: Fix kfree() of static memory on setting driver_override") Change-Id: I9a87b9cf412191d9872b48f1f876a81df6701de0 Signed-off-by: Greg Kroah-Hartman --- drivers/rpmsg/rpmsg_core.c | 2 +- include/linux/rpmsg.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c index 2a729b3b7322..03db9ffdc1a3 100644 --- a/drivers/rpmsg/rpmsg_core.c +++ b/drivers/rpmsg/rpmsg_core.c @@ -586,7 +586,7 @@ int rpmsg_register_device_override(struct rpmsg_device *rpdev, device_initialize(dev); if (driver_override) { - ret = driver_set_override(dev, &rpdev->driver_override, + ret = driver_set_override(dev, (const char **)&rpdev->driver_override, driver_override, strlen(driver_override)); if (ret) { diff --git a/include/linux/rpmsg.h b/include/linux/rpmsg.h index 4ec3fad4e220..dd6df8dfd052 100644 --- a/include/linux/rpmsg.h +++ b/include/linux/rpmsg.h @@ -53,7 +53,7 @@ struct rpmsg_channel_info { struct rpmsg_device { struct device dev; struct rpmsg_device_id id; - const char *driver_override; + char *driver_override; u32 src; u32 dst; struct rpmsg_endpoint *ept;