Isaku Yamahata wrote: > define sync bitops which is necessary for ia64/xen. > > Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx> > --- > include/asm-ia64/sync_bitops.h | 59 ++++++++++++++++++++++++++++++++++++++++ > 1 files changed, 59 insertions(+), 0 deletions(-) > create mode 100644 include/asm-ia64/sync_bitops.h > > diff --git a/include/asm-ia64/sync_bitops.h b/include/asm-ia64/sync_bitops.h > new file mode 100644 > index 0000000..f56cd90 > --- /dev/null > +++ b/include/asm-ia64/sync_bitops.h > @@ -0,0 +1,59 @@ > +#ifndef _ASM_IA64_SYNC_BITOPS_H > +#define _ASM_IA64_SYNC_BITOPS_H > + > +/* > + * Copyright 1992, Linus Torvalds. > + * Heavily modified to provide guaranteed strong synchronisation > + * when communicating with Xen or other guest OSes running on other CPUs. > + */ > + > +static inline void sync_set_bit(int nr, volatile void *addr) > +{ > + set_bit(nr, addr); > +} > + > +static inline void sync_clear_bit(int nr, volatile void *addr) > +{ > + clear_bit(nr, addr); > +} > + > +static inline void sync_change_bit(int nr, volatile void *addr) > +{ > + change_bit(nr, addr); > +} > + > +static inline int sync_test_and_set_bit(int nr, volatile void *addr) > +{ > + return test_and_set_bit(nr, addr); > +} > + > +static inline int sync_test_and_clear_bit(int nr, volatile void *addr) > +{ > + return test_and_clear_bit(nr, addr); > +} > + > +static inline int sync_test_and_change_bit(int nr, volatile void *addr) > +{ > + return test_and_change_bit(nr, addr); > +} > + > +static inline int sync_const_test_bit(int nr, const volatile void *addr) > +{ > + return test_bit(nr, addr); > +} > + > +static inline int sync_var_test_bit(int nr, volatile void *addr) > +{ > + return test_bit(nr, addr); > +} > + > +#define sync_cmpxchg ia64_cmpxchg4_acq > Please always use arguments with function-like macros, to prevent accidental namespace clashes. > + > +#define sync_test_bit(nr,addr) \ > + (__builtin_constant_p(nr) ? \ > + sync_const_test_bit((nr), (addr)) : \ > + sync_var_test_bit((nr), (addr))) > + > +#define sync_cmpxchg_subword sync_cmpxchg > Ditto. J _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization