git: 1bd05bae9252 - stable/13 - LinuxKPI: implement memset_after()
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 19 Feb 2024 08:07:37 UTC
The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=1bd05bae9252fb21a65da19504c144349b0c6577 commit 1bd05bae9252fb21a65da19504c144349b0c6577 Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2024-01-29 14:19:59 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2024-02-19 08:01:58 +0000 LinuxKPI: implement memset_after() memset_after() is needed by iwlwifi d3.c. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D43644 (cherry picked from commit 2d9d35837d8ea3ee7d7447d63a8755d45ec2fd96) --- sys/compat/linuxkpi/common/include/linux/string.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/string.h b/sys/compat/linuxkpi/common/include/linux/string.h index 1d9b7af5d9d5..f745c2f6d343 100644 --- a/sys/compat/linuxkpi/common/include/linux/string.h +++ b/sys/compat/linuxkpi/common/include/linux/string.h @@ -265,4 +265,12 @@ memcpy_and_pad(void *dst, size_t dstlen, const void *src, size_t len, int ch) memset(_ptr + _o, _c, sizeof(*(ptr)) - _o); \ }) +#define memset_after(ptr, bytepat, smember) \ +({ \ + uint8_t *_ptr = (uint8_t *)(ptr); \ + int _c = (int)(bytepat); \ + size_t _o = offsetofend(typeof(*(ptr)), smember); \ + memset(_ptr + _o, _c, sizeof(*(ptr)) - _o); \ +}) + #endif /* _LINUXKPI_LINUX_STRING_H_ */