mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2026-01-07 16:11:43 +00:00
cbmem: map_memory: Use length modifier j and cast for an off_t argument
cbmem currently fails to build due to `-Werror` and the following
warning.
$ make
cc -O2 -Wall -Werror -iquote ../../src/include -iquote ../../src/src/arch/x86 -c -o cbmem.o cbmem.c
cbmem.c: In function ‘map_memory’:
cbmem.c:87:2: error: format ‘%zx’ expects argument of type ‘size_t’, but argument 2 has type ‘off_t’ [-Werror=format]
[…]
Casting the argument of type `off_t` to `intmax_t` and using the
length modifier `j`
$ man 3 printf
[…]
j A following integer conversion corresponds to an intmax_t or uintmax_t argument.
[…]
instead of `z` as suggested in [1] and confirmed by stefanct and
segher in #coreboot on <irc.freenode.net>, gets rid of this warning
and should work an 32-bit and 64-bit systems, as an `off_t` fits
into `intmax_t`.
[1] http://www.pixelbeat.org/programming/gcc/int_types/
Change-Id: I1360abbc47aa1662e1edfbe337cf7911695c532f
Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-on: http://review.coreboot.org/3083
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
committed by
Ronald G. Minnich
parent
8c937c7e3c
commit
8d9ffd93b5
@@ -84,7 +84,7 @@ static void *map_memory(u64 physical)
|
||||
/* Mapped memory must be aligned to page size */
|
||||
p = physical & ~(page - 1);
|
||||
|
||||
debug("Mapping 1MB of physical memory at 0x%zx.\n", p);
|
||||
debug("Mapping 1MB of physical memory at 0x%jx.\n", (intmax_t)p);
|
||||
|
||||
v = mmap(NULL, MAP_BYTES, PROT_READ, MAP_SHARED, fd, p);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user