Subversion Repositories Kolibri OS

Rev

Rev 6936 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6936 Rev 7143
Line 4... Line 4...
4
#include 
4
#include 
5
#include 
5
#include 
Line 6... Line 6...
6
 
6
 
7
/*
7
/*
8
 * Force strict CPU ordering.
8
 * Force strict CPU ordering.
9
 * And yes, this is required on UP too when we're talking
9
 * And yes, this might be required on UP too when we're talking
10
 * to devices.
10
 * to devices.
Line 11... Line 11...
11
 */
11
 */
12
 
12
 
Line 29... Line 29...
29
#else
29
#else
30
#define dma_rmb()	barrier()
30
#define dma_rmb()	barrier()
31
#endif
31
#endif
32
#define dma_wmb()	barrier()
32
#define dma_wmb()	barrier()
Line 33... Line -...
33
 
-
 
34
#ifdef CONFIG_SMP
33
 
35
#define smp_mb()	mb()
34
#define __smp_mb()	mb()
36
#define smp_rmb()	dma_rmb()
35
#define __smp_rmb()	dma_rmb()
37
#define smp_wmb()	barrier()
36
#define __smp_wmb()	barrier()
38
#define smp_store_mb(var, value) do { (void)xchg(&var, value); } while (0)
-
 
39
#else /* !SMP */
-
 
40
#define smp_mb()	barrier()
-
 
41
#define smp_rmb()	barrier()
-
 
42
#define smp_wmb()	barrier()
-
 
43
#define smp_store_mb(var, value) do { WRITE_ONCE(var, value); barrier(); } while (0)
-
 
44
#endif /* SMP */
-
 
45
 
-
 
46
#define read_barrier_depends()		do { } while (0)
-
 
Line 47... Line 37...
47
#define smp_read_barrier_depends()	do { } while (0)
37
#define __smp_store_mb(var, value) do { (void)xchg(&var, value); } while (0)
Line 48... Line 38...
48
 
38
 
49
#if defined(CONFIG_X86_PPRO_FENCE)
39
#if defined(CONFIG_X86_PPRO_FENCE)