drivers/input/serio/serio_raw.c | 1 + 1 file changed, 1 insertion(+)
From: Arnd Bergmann <arnd@arndb.de>
The number of bytes returned from the write function is now
undefined:
drivers/input/serio/serio_raw.c:204:12: error: variable 'written' is uninitialized when used here [-Werror,-Wuninitialized]
204 | return written ?: -EIO;
| ^~~~~~~
Fixes: 5b53a9d40c4f ("Input: serio_raw - use guard notation for locks and other resources")
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <error27@gmail.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202410201730.ItNhUTIv-lkp@intel.com/
Closes: https://lore.kernel.org/r/202410201759.qnyACw46-lkp@intel.com/
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/input/serio/serio_raw.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/input/serio/serio_raw.c b/drivers/input/serio/serio_raw.c
index e058fef07f57..55fe77d04089 100644
--- a/drivers/input/serio/serio_raw.c
+++ b/drivers/input/serio/serio_raw.c
@@ -195,6 +195,7 @@ static ssize_t serio_raw_write(struct file *file, const char __user *buffer,
if (count > 32)
count = 32;
+ written = 0;
while (count--) {
if (get_user(c, buffer++))
return -EFAULT;
--
2.39.5
Hi Arnd, On Mon, Oct 21, 2024 at 10:38:27AM +0000, Arnd Bergmann wrote: > From: Arnd Bergmann <arnd@arndb.de> > > The number of bytes returned from the write function is now > undefined: > > drivers/input/serio/serio_raw.c:204:12: error: variable 'written' is uninitialized when used here [-Werror,-Wuninitialized] > 204 | return written ?: -EIO; > | ^~~~~~~ Thank you for the patch but I already have one fixing this up queued. > > Fixes: 5b53a9d40c4f ("Input: serio_raw - use guard notation for locks and other resources") > Reported-by: kernel test robot <lkp@intel.com> > Reported-by: Dan Carpenter <error27@gmail.com> > Closes: https://lore.kernel.org/oe-kbuild-all/202410201730.ItNhUTIv-lkp@intel.com/ > Closes: https://lore.kernel.org/r/202410201759.qnyACw46-lkp@intel.com/ > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/input/serio/serio_raw.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/input/serio/serio_raw.c b/drivers/input/serio/serio_raw.c > index e058fef07f57..55fe77d04089 100644 > --- a/drivers/input/serio/serio_raw.c > +++ b/drivers/input/serio/serio_raw.c > @@ -195,6 +195,7 @@ static ssize_t serio_raw_write(struct file *file, const char __user *buffer, > if (count > 32) > count = 32; > > + written = 0; > while (count--) { > if (get_user(c, buffer++)) > return -EFAULT; > -- > 2.39.5 > -- Dmitry
© 2016 - 2024 Red Hat, Inc.