]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
iio: core: fix uninitialized data in debugfs
authorDan Carpenter <error27@gmail.com>
Mon, 25 May 2026 07:16:27 +0000 (10:16 +0300)
committerJonathan Cameron <jic23@kernel.org>
Tue, 26 May 2026 18:22:57 +0000 (19:22 +0100)
If *ppos is non-zero then simple_write_to_buffer() will not initialize
the start of buf[].  Non zero values for *ppos aren't going to work
anyway.  Test for them at the start of the function and return -EINVAL.

Fixes: 6d5dd486c715 ("iio: core: make use of simple_write_to_buffer()")
Signed-off-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Maxwell Doose <m32285159@gmail.com>
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/industrialio-core.c

index 22eefd048ba92e64affb84006ab3750a402b975f..15b56f8972fc9d6dfe9f8cf86b4012606329ff8b 100644 (file)
@@ -418,7 +418,7 @@ static ssize_t iio_debugfs_write_reg(struct file *file,
        char buf[80];
        int ret;
 
-       if (count >= sizeof(buf))
+       if (*ppos != 0 || count >= sizeof(buf))
                return -EINVAL;
 
        ret = simple_write_to_buffer(buf, sizeof(buf) - 1, ppos, userbuf,