[U-Boot] fs: fat: fix fatwrite overflow calculation

Tom Rini trini at konsulko.com
Sat Aug 26 20:45:30 UTC 2017


On Sun, Aug 13, 2017 at 03:16:17PM -0400, Reno Farnesi wrote:

> The overflow calculation was incorrect. Adding the start block of the
> partition is not needed because the sectors are already relative to the
> beginning of the partition. If you attempted to write a file smaller
> than cur_part_info.start blocks on a full partition the old calculation
> fails to catch the overflow. This would cause an infinite loop in the
> determine_fatent function.
> 
> Old, incorrect calculation:
> 
> ending sector of new file = start sector + file size (in sectors)
> last sector = partition start + total sectors on the partition
> 
> Adding the partition start block number is not needed because sectors
> are already relative to the start of the partition.
> 
> New calculation:
> 
> ending sector of new file = start sector + file size (in sectors)
> last sector = total sectors on the partition
> 
> Signed-off-by: Reno Farnesi <nfarnesi4 at gmail.com>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170826/2d3b263d/attachment.sig>


More information about the U-Boot mailing list