On 12/2/22 20:49, Warner Losh wrote:
The branch main has been updated by imp:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=da5d0a1dbc2838eae7033254705c684d7a013fce

commit da5d0a1dbc2838eae7033254705c684d7a013fce
Author:     Warner Losh <[email protected]>
AuthorDate: 2022-12-02 19:41:01 +0000
Commit:     Warner Losh <[email protected]>
CommitDate: 2022-12-02 19:41:01 +0000

     kboot: Use unsigned long long.
For the 64-bit platforms, this is a nop. Currently kboot only supports
     64-bit platforms, though. If we support 32-bit in the future, this will
     become important.
Noticed by: rpokala
     Sponsored by:           Netflix
---
  stand/kboot/util.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/stand/kboot/util.c b/stand/kboot/util.c
index 938aad599e19..7d467a29b059 100644
--- a/stand/kboot/util.c
+++ b/stand/kboot/util.c
@@ -35,7 +35,7 @@ file2str(const char *fn, char *buffer, size_t buflen)
  bool
  file2u64(const char *fn, uint64_t *val)
  {
-       unsigned long v;
+       unsigned long long v;
        char buffer[80];
if (!file2str(fn, buffer, sizeof(buffer)))

Why not include stdint.h and use uint64_t ?

Instead of building on the good old assumptions, int is 32-bit and long long is 64-bit? It is interesting to observe the sizes of these types in 8-bit compilers :-) Not that it makes a big difference for us. Maybe _Static_assert(sizeof(long long) == 8, "Please fix this code");

--HPS

--HPS

Reply via email to