memcmp: fix comparison on short read
read() might return less than $count bytes which is only an upper limit. The user is supposed to repeat the command to fill a buffer completely. So use the convenience wrapper read_full in memcmp. This fixes memcmp on /dev/nand0 on an Armada XP. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
019606ddc3
commit
e0ff988ad8
|
@ -91,13 +91,13 @@ static int do_memcmp(int argc, char *argv[])
|
|||
|
||||
now = min((loff_t)RW_BUF_SIZE, count);
|
||||
|
||||
r1 = read(sourcefd, mem_rw_buf, now);
|
||||
r1 = read_full(sourcefd, mem_rw_buf, now);
|
||||
if (r1 < 0) {
|
||||
perror("read");
|
||||
goto out;
|
||||
}
|
||||
|
||||
r2 = read(destfd, rw_buf1, now);
|
||||
r2 = read_full(destfd, rw_buf1, now);
|
||||
if (r2 < 0) {
|
||||
perror("read");
|
||||
goto out;
|
||||
|
|
Loading…
Reference in New Issue