aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2025-03-20 12:38:59 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2025-03-24 09:50:36 -0400
commit9c3a2c9b471aa42b13c26c916f6a0852899a57e0 (patch)
tree1fb1110032edf3a6f81a7fc69e71e41d4fd7fb67
parentbcachefs: Handle backpointers with unknown data types (diff)
downloadwireguard-linux-9c3a2c9b471aa42b13c26c916f6a0852899a57e0.tar.xz
wireguard-linux-9c3a2c9b471aa42b13c26c916f6a0852899a57e0.zip
bcachefs: Disable asm memcpys when kmsan enabled
kmsan doesn't know about inline assembly, obviously; this will close a ton of syzbot bugs. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to '')
-rw-r--r--fs/bcachefs/util.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/bcachefs/util.h b/fs/bcachefs/util.h
index d41e133acc4d..7d921fc920a0 100644
--- a/fs/bcachefs/util.h
+++ b/fs/bcachefs/util.h
@@ -431,7 +431,7 @@ static inline void memcpy_u64s_small(void *dst, const void *src,
static inline void __memcpy_u64s(void *dst, const void *src,
unsigned u64s)
{
-#ifdef CONFIG_X86_64
+#if defined(CONFIG_X86_64) && !defined(CONFIG_KMSAN)
long d0, d1, d2;
asm volatile("rep ; movsq"
@@ -508,7 +508,7 @@ static inline void __memmove_u64s_up(void *_dst, const void *_src,
u64 *dst = (u64 *) _dst + u64s - 1;
u64 *src = (u64 *) _src + u64s - 1;
-#ifdef CONFIG_X86_64
+#if defined(CONFIG_X86_64) && !defined(CONFIG_KMSAN)
long d0, d1, d2;
asm volatile("std ;\n"