010-capacity-is-unsigned.patch 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. From df9fb90120423c4c55b66a5dc09af23f605a406b Mon Sep 17 00:00:00 2001
  2. From: Daniel Golle <daniel@makrotopia.org>
  3. Date: Mon, 1 Dec 2014 21:37:25 +0100
  4. Subject: [PATCH] disk/part.c: use unsigned format when printing capacity
  5. To: u-boot@lists.denx.de
  6. Large disks otherwise produce highly unplausible output such as
  7. Capacity: 1907729.0 MB = 1863.0 GB (-387938128 x 512)
  8. As supposedly all size-related decimals are unsigned, use unsigned
  9. format in printf statement, resulting in a correct capacity being
  10. displayed:
  11. Capacity: 1907729.0 MB = 1863.0 GB (3907029168 x 512)
  12. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  13. ---
  14. disk/part.c | 4 ++--
  15. 1 file changed, 2 insertions(+), 2 deletions(-)
  16. diff --git a/disk/part.c b/disk/part.c
  17. index 43485c9..7c67ea6 100644
  18. --- a/disk/part.c
  19. +++ b/disk/part.c
  20. @@ -229,13 +229,13 @@ void dev_print (block_dev_desc_t *dev_desc)
  21. printf (" Supports 48-bit addressing\n");
  22. #endif
  23. #if defined(CONFIG_SYS_64BIT_LBA)
  24. - printf (" Capacity: %ld.%ld MB = %ld.%ld GB (%Ld x %ld)\n",
  25. + printf (" Capacity: %lu.%lu MB = %lu.%lu GB (%Lu x %lu)\n",
  26. mb_quot, mb_rem,
  27. gb_quot, gb_rem,
  28. lba,
  29. dev_desc->blksz);
  30. #else
  31. - printf (" Capacity: %ld.%ld MB = %ld.%ld GB (%ld x %ld)\n",
  32. + printf (" Capacity: %lu.%lu MB = %lu.%lu GB (%lu x %lu)\n",
  33. mb_quot, mb_rem,
  34. gb_quot, gb_rem,
  35. (ulong)lba,
  36. --
  37. 2.1.3