From f882d43b56e909465dd2c2dc904512f1e2c5cef7 Mon Sep 17 00:00:00 2001 From: Chris McDonald Date: Wed, 24 Nov 2021 13:11:51 -0700 Subject: [PATCH] sys/util: Stricter bytecpy impl The docstring for this function states that it is guaranteed to perform a copy byte by byte, but this is not true in general without a `volatile` storage type on the casted pointer. Signed-off-by: Chris McDonald --- include/sys/util.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/sys/util.h b/include/sys/util.h index 3ff39328b2d..bc04d928b0f 100644 --- a/include/sys/util.h +++ b/include/sys/util.h @@ -253,7 +253,7 @@ static inline void bytecpy(void *dst, const void *src, size_t size) size_t i; for (i = 0; i < size; ++i) { - ((uint8_t *)dst)[i] = ((const uint8_t *)src)[i]; + ((volatile uint8_t *)dst)[i] = ((volatile const uint8_t *)src)[i]; } }