drivers/rpmsg/qcom_glink_native.c | 2 +- drivers/rpmsg/qcom_smd.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
kzalloc() already zero-initializes the destination buffer, making
strscpy() sufficient for safely copying the name. The additional NUL-
padding performed by strscpy_pad() is unnecessary.
The size parameter is optional, and strscpy() automatically determines
the size of the destination buffer using sizeof() when the argument is
omitted. RPMSG_NAME_SIZE is equal to sizeof(rpdev->id.name) and can be
removed - remove it.
No functional changes intended.
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
---
drivers/rpmsg/qcom_glink_native.c | 2 +-
drivers/rpmsg/qcom_smd.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c
index a2f9d85c7156..820a6ca5b1d7 100644
--- a/drivers/rpmsg/qcom_glink_native.c
+++ b/drivers/rpmsg/qcom_glink_native.c
@@ -1663,7 +1663,7 @@ static int qcom_glink_rx_open(struct qcom_glink *glink, unsigned int rcid,
}
rpdev->ept = &channel->ept;
- strscpy_pad(rpdev->id.name, name, RPMSG_NAME_SIZE);
+ strscpy(rpdev->id.name, name);
rpdev->src = RPMSG_ADDR_ANY;
rpdev->dst = RPMSG_ADDR_ANY;
rpdev->ops = &glink_device_ops;
diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c
index 40d386809d6b..3c86c5553de6 100644
--- a/drivers/rpmsg/qcom_smd.c
+++ b/drivers/rpmsg/qcom_smd.c
@@ -1089,7 +1089,7 @@ static int qcom_smd_create_device(struct qcom_smd_channel *channel)
/* Assign public information to the rpmsg_device */
rpdev = &qsdev->rpdev;
- strscpy_pad(rpdev->id.name, channel->name, RPMSG_NAME_SIZE);
+ strscpy(rpdev->id.name, channel->name);
rpdev->src = RPMSG_ADDR_ANY;
rpdev->dst = RPMSG_ADDR_ANY;
--
2.49.0
On Tue, 29 Apr 2025 12:45:43 +0200, Thorsten Blum wrote:
> kzalloc() already zero-initializes the destination buffer, making
> strscpy() sufficient for safely copying the name. The additional NUL-
> padding performed by strscpy_pad() is unnecessary.
>
> The size parameter is optional, and strscpy() automatically determines
> the size of the destination buffer using sizeof() when the argument is
> omitted. RPMSG_NAME_SIZE is equal to sizeof(rpdev->id.name) and can be
> removed - remove it.
>
> [...]
Applied, thanks!
[1/1] rpmsg: Use strscpy() instead of strscpy_pad()
commit: 28b825975b8feb352e996d77f679e790b4d84913
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
On Tue, 29 Apr 2025 at 04:46, Thorsten Blum <thorsten.blum@linux.dev> wrote: > > kzalloc() already zero-initializes the destination buffer, making > strscpy() sufficient for safely copying the name. The additional NUL- > padding performed by strscpy_pad() is unnecessary. > > The size parameter is optional, and strscpy() automatically determines > the size of the destination buffer using sizeof() when the argument is > omitted. RPMSG_NAME_SIZE is equal to sizeof(rpdev->id.name) and can be > removed - remove it. > > No functional changes intended. > > Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev> > --- > drivers/rpmsg/qcom_glink_native.c | 2 +- > drivers/rpmsg/qcom_smd.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) I will let Bjorn take care of this one. Thanks, Mathieu > > diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c > index a2f9d85c7156..820a6ca5b1d7 100644 > --- a/drivers/rpmsg/qcom_glink_native.c > +++ b/drivers/rpmsg/qcom_glink_native.c > @@ -1663,7 +1663,7 @@ static int qcom_glink_rx_open(struct qcom_glink *glink, unsigned int rcid, > } > > rpdev->ept = &channel->ept; > - strscpy_pad(rpdev->id.name, name, RPMSG_NAME_SIZE); > + strscpy(rpdev->id.name, name); > rpdev->src = RPMSG_ADDR_ANY; > rpdev->dst = RPMSG_ADDR_ANY; > rpdev->ops = &glink_device_ops; > diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c > index 40d386809d6b..3c86c5553de6 100644 > --- a/drivers/rpmsg/qcom_smd.c > +++ b/drivers/rpmsg/qcom_smd.c > @@ -1089,7 +1089,7 @@ static int qcom_smd_create_device(struct qcom_smd_channel *channel) > > /* Assign public information to the rpmsg_device */ > rpdev = &qsdev->rpdev; > - strscpy_pad(rpdev->id.name, channel->name, RPMSG_NAME_SIZE); > + strscpy(rpdev->id.name, channel->name); > rpdev->src = RPMSG_ADDR_ANY; > rpdev->dst = RPMSG_ADDR_ANY; > > -- > 2.49.0 >
Hi Mathieu, On 30. Apr 2025, at 16:59, Mathieu Poirier wrote: > On Tue, 29 Apr 2025 at 04:46, Thorsten Blum wrote: >> >> kzalloc() already zero-initializes the destination buffer, making >> strscpy() sufficient for safely copying the name. The additional NUL- >> padding performed by strscpy_pad() is unnecessary. >> >> The size parameter is optional, and strscpy() automatically determines >> the size of the destination buffer using sizeof() when the argument is >> omitted. RPMSG_NAME_SIZE is equal to sizeof(rpdev->id.name) and can be >> removed - remove it. >> >> No functional changes intended. >> >> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev> >> --- >> drivers/rpmsg/qcom_glink_native.c | 2 +- >> drivers/rpmsg/qcom_smd.c | 2 +- >> 2 files changed, 2 insertions(+), 2 deletions(-) > > > I will let Bjorn take care of this one. This one didn't make it into the last merge window, did it? Could you or Bjorn take care of it or should I resend it? Thanks, Thorsten
On Tue, Jun 10, 2025 at 12:38:14PM +0200, Thorsten Blum wrote: > Hi Mathieu, > > On 30. Apr 2025, at 16:59, Mathieu Poirier wrote: > > On Tue, 29 Apr 2025 at 04:46, Thorsten Blum wrote: > >> > >> kzalloc() already zero-initializes the destination buffer, making > >> strscpy() sufficient for safely copying the name. The additional NUL- > >> padding performed by strscpy_pad() is unnecessary. > >> > >> The size parameter is optional, and strscpy() automatically determines > >> the size of the destination buffer using sizeof() when the argument is > >> omitted. RPMSG_NAME_SIZE is equal to sizeof(rpdev->id.name) and can be > >> removed - remove it. > >> > >> No functional changes intended. > >> > >> Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev> > >> --- > >> drivers/rpmsg/qcom_glink_native.c | 2 +- > >> drivers/rpmsg/qcom_smd.c | 2 +- > >> 2 files changed, 2 insertions(+), 2 deletions(-) > > > > > > I will let Bjorn take care of this one. > > This one didn't make it into the last merge window, did it? > > Could you or Bjorn take care of it or should I resend it? > I looked at it, but needed to convince myself that there were no side effects, and then missed pulling it. It's still in the queue, so I'm taking another look, no need to resend it. Thanks, Bjorn > Thanks, > Thorsten >
© 2016 - 2026 Red Hat, Inc.