Skip to content

Commit 6db9207

Browse files
mandreetytso
authored andcommitted
Avoid redefining CACHE_LINE_SIZE if system provides it.
FreeBSD 14.3 complains about our trying to redefine the CACHE_LINE_SIZE, which happens to be 1 << 6 == 64 on amd64 but not arm64. Just check and only #define unless it's already: ../../../lib/ext2fs/unix_io.c:563: warning: "CACHE_LINE_SIZE" redefined 563 | #define CACHE_LINE_SIZE 64 | In file included from /usr/include/sys/param.h:163, from /usr/include/bsm/audit.h:41, from /usr/include/sys/ucred.h:42, from /usr/include/sys/mount.h:37, from ../../../lib/ext2fs/unix_io.c:53: /usr/include/machine/param.h:92: note: this is the location of the previous definition 92 | #define CACHE_LINE_SIZE (1 << CACHE_LINE_SHIFT) | On FreeBSD 14.3, machine/param.h - for arm64 and powerpc define CACHE_LINE_SIZE to (128), - for i386, amd64, arm (32) and riscv define (64). Signed-off-by: Matthias Andree <matthias.andree@gmx.de> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
1 parent cba75d2 commit 6db9207

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

lib/ext2fs/unix_io.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,10 @@ static void free_cache(struct unix_private_data *data)
560560

561561
/* 2^63 + 2^61 - 2^57 + 2^54 - 2^51 - 2^18 + 1 */
562562
#define GOLDEN_RATIO_PRIME 0x9e37fffffffc0001UL
563+
#ifndef CACHE_LINE_SIZE
564+
/* if the system didn't tell us, guess something reasonable */
563565
#define CACHE_LINE_SIZE 64
566+
#endif
564567

565568
/* buffer cache hashing function, crudely stolen from xfsprogs */
566569
static unsigned int

0 commit comments

Comments
 (0)