diff options
author | Simon Glass <sjg@chromium.org> | 2019-12-28 10:45:08 -0700 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-01-17 17:53:52 -0500 |
commit | 825faebbdfc9bcd3e6e6ac3d8f7b321deb43a94e (patch) | |
tree | 20bc20f02d4b8949a4b551d07c9161e1d3047fe5 /include/linux | |
parent | db41d65a97f335167e1fbc0400a83333b5157703 (diff) |
common: Move check_member() to kernel.h
The kernel.h file has a number of useful macros including a few related
to structures. Move check_member() there too.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/kernel.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 564819a1c0a..fefbc07375e 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -268,4 +268,15 @@ const typeof( ((type *)0)->member ) *__mptr = (ptr); \ (type *)( (char *)__mptr - offsetof(type,member) );}) +/* + * check_member() - Check the offset of a structure member + * + * @structure: Name of structure (e.g. global_data) + * @member: Name of member (e.g. baudrate) + * @offset: Expected offset in bytes + */ +#define check_member(structure, member, offset) _Static_assert( \ + offsetof(struct structure, member) == (offset), \ + "`struct " #structure "` offset for `" #member "` is not " #offset) + #endif |