Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
cmpxchg.h File Reference
#include <linux/irqflags.h>
#include <asm-generic/cmpxchg-local.h>
#include <asm-generic/cmpxchg.h>

Go to the source code of this file.

Data Structures

struct  __xchg_dummy
 

Macros

#define __xg(x)   ((volatile struct __xchg_dummy *)(x))
 
#define xchg(ptr, x)   ((__typeof__(*(ptr)))__xchg((unsigned long)(x),(ptr),sizeof(*(ptr))))
 
#define cmpxchg64_local(ptr, o, n)   __cmpxchg64_local_generic((ptr), (o), (n))
 
#define cmpxchg_local(ptr, o, n)
 

Functions

unsigned long __invalid_xchg_size (unsigned long, volatile void *, int)
 
unsigned long __invalid_cmpxchg_size (volatile void *, unsigned long, unsigned long, int)
 

Macro Definition Documentation

#define __xg (   x)    ((volatile struct __xchg_dummy *)(x))

Definition at line 7 of file cmpxchg.h.

#define cmpxchg64_local (   ptr,
  o,
  n 
)    __cmpxchg64_local_generic((ptr), (o), (n))

Definition at line 82 of file cmpxchg.h.

#define cmpxchg_local (   ptr,
  o,
  n 
)
Value:
((__typeof__(*(ptr)))__cmpxchg_local_generic((ptr), (unsigned long)(o),\
(unsigned long)(n), sizeof(*(ptr))))

Definition at line 133 of file cmpxchg.h.

#define xchg (   ptr,
  x 
)    ((__typeof__(*(ptr)))__xchg((unsigned long)(x),(ptr),sizeof(*(ptr))))

Definition at line 78 of file cmpxchg.h.

Function Documentation

unsigned long __invalid_cmpxchg_size ( volatile void ,
unsigned  long,
unsigned  long,
int   
)
unsigned long __invalid_xchg_size ( unsigned  long,
volatile void ,
int   
)