[PATCH v2 13/33] kmsan: Introduce memset_no_sanitize_memory()

From: Ilya Leoshkevich
Date: Tue Nov 21 2023 - 17:17:07 EST


Add a wrapper for memset() that prevents unpoisoning. This is useful
for filling memory allocator redzones.

Signed-off-by: Ilya Leoshkevich <iii@xxxxxxxxxxxxx>
---
include/linux/kmsan.h | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/include/linux/kmsan.h b/include/linux/kmsan.h
index ff8fd95733fa..439df72c8dc6 100644
--- a/include/linux/kmsan.h
+++ b/include/linux/kmsan.h
@@ -345,4 +345,13 @@ static inline void *kmsan_get_metadata(void *addr, bool is_origin)

#endif

+/**
+ * memset_no_sanitize_memory() - memset() without the KMSAN instrumentation.
+ */
+__no_sanitize_memory
+static inline void *memset_no_sanitize_memory(void *s, int c, size_t n)
+{
+ return memset(s, c, n);
+}
+
#endif /* _LINUX_KMSAN_H */
--
2.41.0