[PATCH] mtd-utils: flash_erase: Fix output of offsets
Artem Bityutskiy
dedekind1 at gmail.com
Sun Oct 17 04:04:15 EDT 2010
On Sat, 2010-10-16 at 13:54 -0700, Brian Norris wrote:
> Need to use unsigned arithmetic and a 64-bit cast in order to
> calculate and output the correct offset for eraseblocks at large
> offsets. Signed integer arithmetic does not produce the correct
> result "uint64_t" result, so for offsets over 2GB we get
> messages like:
>
> Erasing 512 Kibyte @ ffffffff83180000 -- 4308642136 % complete.
>
> Note that this error was not affecting proper erasure; it just
> produced incorrect status messages.
>
> Also, we should not add an extra eraseblock for the final status
> message; this gives misleading output when, for example, the
> following statement is executed:
>
> $ flash_erase /dev/mtd0 0 1
> Erasing 512 Kibyte @ 80000 -- 100 % complete
>
> We aren't erasing at offset 0x80000; it should display offset 0.
>
> Signed-off-by: Brian Norris <computersforpeace at gmail.com>
Pushed, thanks!
--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)
More information about the linux-mtd
mailing list