[PATCH] commands: mm: don't ignore pread() errors for larger access sizes
Ahmad Fatoum
a.fatoum at pengutronix.de
Fri Sep 2 03:04:58 PDT 2022
Error check was before pread was called and because ret was initialized,
compiler didn't warn about it. Fix this.
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
commands/mm.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/commands/mm.c b/commands/mm.c
index 9ce883964485..8fe87a80a18e 100644
--- a/commands/mm.c
+++ b/commands/mm.c
@@ -16,7 +16,7 @@
static int do_mem_mm(int argc, char *argv[])
{
- int ret = 0;
+ int ret;
int fd;
char *filename = "/dev/mem";
int mode = O_RWSIZE_4;
@@ -65,9 +65,9 @@ static int do_mem_mm(int argc, char *argv[])
goto out_write;
break;
case O_RWSIZE_4:
+ ret = pread(fd, &val32, 4, adr);
if (ret < 0)
goto out_read;
- ret = pread(fd, &val32, 4, adr);
val32 &= ~mask;
val32 |= (value & mask);
ret = pwrite(fd, &val32, 4, adr);
@@ -75,9 +75,9 @@ static int do_mem_mm(int argc, char *argv[])
goto out_write;
break;
case O_RWSIZE_8:
+ ret = pread(fd, &val64, 8, adr);
if (ret < 0)
goto out_read;
- ret = pread(fd, &val64, 8, adr);
val64 &= ~mask;
val64 |= (value & mask);
ret = pwrite(fd, &val64, 8, adr);
--
2.30.2
More information about the barebox
mailing list