Re: [PATCH v1] ACPICA: Unbreak tools build after switching over to strscpy_pad()

From: Rafael J. Wysocki

Date: Tue Jun 23 2026 - 06:50:12 EST


On Tue, Jun 23, 2026 at 6:02 AM Jiri Slaby <jirislaby@xxxxxxxxxx> wrote:
>
> On 22. 06. 26, 20:23, Rafael J. Wysocki wrote:
> > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> >
> > Commit 97f7d3f9c9ac ("ACPICA: Replace strncpy() with strscpy_pad() in
> > acpi_ut_safe_strncpy()") switched over the ACPICA code in the kernel to
> > using strscpy_pad() instead of a combination of strncpy() and manual
> > NUL-termination of the destination string, but it overlooked the fact
> > that tools also use the code in question and strscpy_pad() is not
> > defined in those builds.
> >
> > Address that by using the original ACPICA code in non-kernel builds.
> >
> > Fixes: 97f7d3f9c9ac ("ACPICA: Replace strncpy() with strscpy_pad() in acpi_ut_safe_strncpy()")
> > Reported-by: Jiri Slaby <jirislaby@xxxxxxxxxx>
> > Closes: https://lore.kernel.org/all/79e9e913-0fb1-4110-804b-c3b5d0edafe4@kernel
> > Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> > ---
> > drivers/acpi/acpica/utnonansi.c | 10 ++++++++++
> > 1 file changed, 9 insertions(+)
> >
> > --- a/drivers/acpi/acpica/utnonansi.c
> > +++ b/drivers/acpi/acpica/utnonansi.c
> > @@ -168,7 +168,17 @@ void acpi_ut_safe_strncpy(char *dest, ch
>
> Hmm, how could this become 17, provided you are adding 9 lines to 7
> lines? Fixed to 16 and applied -- testing.

Yeah, I manually updated the comment and forgot to refresh the patch
afterward. Sorry.

> > {
> > /* Always terminate destination string */
> >
> > +#ifdef __KERNEL__
> > strscpy_pad(dest, source, dest_size);
> > +#else
> > + /*
> > + * strscpy_pad() is not defined in ACPICA tools builds, so use strncpy()
> > + * and directly NUL-terminate the destination string in that case.
> > + */
> > + strncpy(dest, source, dest_size);
> > + dest[dest_size - 1] = 0;
> > +#endif
> > }
> >
> > #endif
> >
> >
> >
>
>
> --
> js
> suse labs