From 5571c05a6b5f9ae6c1f501b26fc48462d76aa7cf Mon Sep 17 00:00:00 2001 From: Qian Yingjin Date: Fri, 18 Aug 2023 10:46:41 -0700 Subject: [PATCH] LU-17031 build: fix refefine __compiletime_strlen error Lustre build failed on Ubuntu 2204 kernel v5.17 with "redefine __compiletime_strlen". This patch fixes this build error. Lustre-change: https://review.whamcloud.com/51953 Lustre-commit: TBD (from aa50b0579aec9039e1ceab0bfdaac45e95df747d) Fixes: 919b93b951 ("LU-16510 build: fortified memcpy from linux 6.1") Signed-off-by: Qian Yingjin Change-Id: Ic26daecd6b91614e01b5b0030f40eede205a21f7 Reviewed-on: https://review.whamcloud.com/c/ex/lustre-release/+/52001 Tested-by: jenkins Tested-by: Maloo Reviewed-by: Andreas Dilger --- libcfs/include/libcfs/linux/linux-fortify-string.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libcfs/include/libcfs/linux/linux-fortify-string.h b/libcfs/include/libcfs/linux/linux-fortify-string.h index aeed8c5..b00d9f7 100644 --- a/libcfs/include/libcfs/linux/linux-fortify-string.h +++ b/libcfs/include/libcfs/linux/linux-fortify-string.h @@ -28,6 +28,7 @@ void __read_overflow2_field(size_t avail, size_t wanted) __compiletime_warning(" void __write_overflow(void) __compiletime_error("detected write beyond size of object (1st parameter)"); void __write_overflow_field(size_t avail, size_t wanted) __compiletime_warning("detected write beyond size of field (1st parameter); maybe use struct_group()?"); +#ifndef __compiletime_strlen #define __compiletime_strlen(p) \ ({ \ char *__p = (char *)(p); \ @@ -42,6 +43,7 @@ void __write_overflow_field(size_t avail, size_t wanted) __compiletime_warning(" } \ __ret; \ }) +#endif #if defined(CONFIG_KASAN_GENERIC) || defined(CONFIG_KASAN_SW_TAGS) extern void *__underlying_memchr(const void *p, int c, __kernel_size_t size) __RENAME(memchr); -- 1.8.3.1