On Mon, 12 Nov 2012, Will Deacon wrote:

> linux/compiler.h will never give us a definition for __compiler_offsetof
> because __KERNEL__ isn't defined, so just use the simple definition that
> we have already.
> 
> This patch removes the redundant code.
> 
> Signed-off-by: Will Deacon <[email protected]>
> ---
>  tools/kvm/include/linux/stddef.h |    6 ------
>  1 files changed, 0 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/kvm/include/linux/stddef.h 
> b/tools/kvm/include/linux/stddef.h
> index 60ea512..39da808 100644
> --- a/tools/kvm/include/linux/stddef.h
> +++ b/tools/kvm/include/linux/stddef.h
> @@ -1,16 +1,10 @@
>  #ifndef _LINUX_STDDEF_H
>  #define _LINUX_STDDEF_H
>  
> -#include <linux/compiler.h>
> -
>  #undef NULL
>  #define NULL ((void *)0)
>  
>  #undef offsetof
> -#ifdef __compiler_offsetof
> -#define offsetof(TYPE,MEMBER) __compiler_offsetof(TYPE,MEMBER)
> -#else
>  #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
> -#endif
>  
>  #endif

I'm seeing the following breakage with this patch applied:

[penberg@tux kvm]$ make
  CC       hw/rtc.o
  CC       ioport.o
  CC       kvm-cpu.o
  CC       kvm.o
In file included from include/kvm/rbtree-interval.h:4:0,
                 from include/kvm/ioport.h:4,
                 from hw/rtc.c:3:
../../include/linux/rbtree_augmented.h:125:24: error: expected ‘=’, ‘,’, ‘;’, 
‘asm’ or ‘__attribute__’ before ‘void’
In file included from include/kvm/rbtree-interval.h:4:0,
                 from include/kvm/ioport.h:4,
                 from ioport.c:1:
../../include/linux/rbtree_augmented.h:125:24: error: expected ‘=’, ‘,’, ‘;’, 
‘asm’ or ‘__attribute__’ before ‘void’
make: *** [hw/rtc.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [ioport.o] Error 1

Reply via email to