From: Paul Durrant Date: Wed, 25 Nov 2020 13:06:27 +0000 (+0100) Subject: xen/include: import sizeof_field() macro from Linux stddef.h X-Git-Tag: archive/raspbian/4.16.0+51-g0941d6cb-1+rpi1~2^2~42^2~1383 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=758fae24d7b90fcfa7dffbffb5a5cab274caf3fc;p=xen.git xen/include: import sizeof_field() macro from Linux stddef.h Co-locate it with the definition of offsetof() (since this is also in stddef.h in the Linux kernel source). This macro will be needed in a subsequent patch. Signed-off-by: Paul Durrant Acked-by: Jan Beulich --- diff --git a/xen/include/xen/compiler.h b/xen/include/xen/compiler.h index c0e0ee9f27..676c6ea1b0 100644 --- a/xen/include/xen/compiler.h +++ b/xen/include/xen/compiler.h @@ -76,6 +76,14 @@ #define offsetof(a,b) __builtin_offsetof(a,b) +/** + * sizeof_field(TYPE, MEMBER) + * + * @TYPE: The structure containing the field of interest + * @MEMBER: The field to return the size of + */ +#define sizeof_field(TYPE, MEMBER) sizeof((((TYPE *)0)->MEMBER)) + #if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L #define alignof __alignof__ #endif