Le 17/04/2026 à 09:39, Pengpeng Hou a écrit :
bootargs_append_store() indexes params[count - 1] when stripping a
trailing newline from the sysfs write buffer.

kernfs passes zero-length writes through to the store callback, so an
empty write makes that newline check read before the start of params.

Reject empty writes before looking at the last input byte.

Fixes: 683eab94da75 ("powerpc/fadump: setup additional parameters for dump capture 
kernel")
Cc: [email protected]

Signed-off-by: Pengpeng Hou <[email protected]>
---
  arch/powerpc/kernel/fadump.c | 3 +++
  1 file changed, 3 insertions(+)

diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c
index 4ebc333dd786..03ab5565e420 100644
--- a/arch/powerpc/kernel/fadump.c
+++ b/arch/powerpc/kernel/fadump.c
@@ -1479,6 +1479,9 @@ static ssize_t bootargs_append_store(struct kobject *kobj,
        if (!fw_dump.fadump_enabled || fw_dump.dump_active)
                return -EPERM;
+ if (!count)
+               return -EINVAL;

Why return an error ? A 0 size write is a valid write, it should return 0 I think.

+
        if (count >= COMMAND_LINE_SIZE)
                return -EINVAL;


Reply via email to