Subversion Repositories Kolibri OS

Rev

Rev 2003 | Rev 5272 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2003 Rev 3031
Line 29... Line 29...
29
 
29
 
30
#define __LOCK_BH(lock) \
30
#define __LOCK_BH(lock) \
Line 31... Line 31...
31
  do { local_bh_disable(); __LOCK(lock); } while (0)
31
  do { local_bh_disable(); __LOCK(lock); } while (0)
32
 
32
 
Line 33... Line 33...
33
#define __LOCK_IRQ(lock) \
33
#define __LOCK_IRQ(lock) \
34
  do { local_irq_disable(); __LOCK(lock); } while (0)
34
  do { asm volatile ("cli \n"); __LOCK(lock); } while (0)
35
 
35
 
36
#define __LOCK_IRQSAVE(lock, flags) \
36
#define __LOCK_IRQSAVE(lock, flags) \
Line 49... Line 49...
49
#define __UNLOCK_BH(lock) \
49
#define __UNLOCK_BH(lock) \
50
  do { preempt_enable_no_resched(); local_bh_enable(); \
50
  do { preempt_enable_no_resched(); local_bh_enable(); \
51
	  __release(lock); (void)(lock); } while (0)
51
	  __release(lock); (void)(lock); } while (0)
Line 52... Line 52...
52
 
52
 
53
#define __UNLOCK_IRQ(lock) \
53
#define __UNLOCK_IRQ(lock) \
Line 54... Line 54...
54
  do { local_irq_enable(); __UNLOCK(lock); } while (0)
54
  do { asm volatile ("sti \n"); __UNLOCK(lock); } while (0)
55
 
55
 
56
#define __UNLOCK_IRQRESTORE(lock, flags)    \
56
#define __UNLOCK_IRQRESTORE(lock, flags)    \
57
  do {                                      \
57
  do {                                      \