display_options: Do not use %llu in print_size
tiny-printf variant doesn't know how to handle %llu format string, but both tiny-printf and print_size can meet in SPL when TFTP is used to obtain main u-boot image. This is known to lead to critical boot issue at AM335x platform when printf is catched in infinite loop. To avoid such issues and make print_size function tiny-printf friendly, use %u instead of %luu. Note, that the size value is guaranteed to be less than 1024 in this conditional branch, so the cast to unsigned int is safe. Signed-off-by: Matwey V. Kornilov <matwey.kornilov@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
c091f65234
commit
f52352f65e
|
|
@ -107,7 +107,12 @@ void print_size(uint64_t size, const char *s)
|
|||
}
|
||||
|
||||
if (!c) {
|
||||
printf("%llu Bytes%s", size, s);
|
||||
/*
|
||||
* SPL tiny-printf is not capable for printing uint64_t.
|
||||
* We have just checked that the size is small enought to fit
|
||||
* unsigned int safely.
|
||||
*/
|
||||
printf("%u Bytes%s", (unsigned int)size, s);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue