bootconfig: Fix negative seeks on 32-bit with LFS enabled
Commit 26dda576 "tools/bootconfig: Cleanup bootconfig footer size calculations" replaced some expressions of type int with the BOOTCONFIG_FOOTER_SIZE macro, which expands to an expression of type size_t, which is unsigned. On 32-bit architectures with LFS enabled (i.e. off_t is 64-bit), the seek offset of -BOOTCONFIG_FOOTER_SIZE now turns into a positive value. Fix this by casting the size to off_t before negating it. Just in case someone changes BOOTCONFIG_MAGIC_LEN to have type size_t later, do the same thing to the seek offset of -BOOTCONFIG_MAGIC_LEN. Link: https://lore.kernel.org/all/aKHlevxeg6Y7UQrz@decadent.org.uk/ Fixes: 26dda576 ("tools/bootconfig: Cleanup bootconfig footer size calculations") Signed-off-by:Ben Hutchings <benh@debian.org> Signed-off-by:
Masami Hiramatsu (Google) <mhiramat@kernel.org>
Loading
Please sign in to comment