fs/fs.c: read up to EOF when len would read past EOF
authorMax Krummenacher <max.krummenacher@toradex.com>
Wed, 5 Aug 2015 15:16:58 +0000 (17:16 +0200)
committerTom Rini <trini@konsulko.com>
Thu, 13 Aug 2015 11:19:35 +0000 (07:19 -0400)
commit7a3e70cfd88cc8062a106ed07bade5a38f146758
treeff698da26a585f7beb20b1e14101f0cff3fb90e1
parentf06b454b1c4420d1698fa1c62b8dd0bab060b691
fs/fs.c: read up to EOF when len would read past EOF

http://lists.denx.de/pipermail/u-boot/2012-September/134347.html
allows for reading files in chunks from the shell.

When this feature is used to read past the end of a file an error
was returned instead of returning the bytes read up to the end of
file. Thus the following fails in the shell:

offset = 0
len = chunksize
do
read file, offset, len
write data
until bytes_read < len

The patch changes the behaviour to printing an informational
message and returning the actual read number of bytes aka read(2)
behaviour for convenient use in U-Boot scripts.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Marek Vasut <marex@denx.de>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
fs/fs.c