Blame view

kernel/linux-rt-4.4.41/sound/core/seq/seq_lock.h 901 Bytes
5113f6f70   김현기   kernel add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  #ifndef __SND_SEQ_LOCK_H
  #define __SND_SEQ_LOCK_H
  
  #include <linux/sched.h>
  
  #if defined(CONFIG_SMP) || defined(CONFIG_SND_DEBUG)
  
  typedef atomic_t snd_use_lock_t;
  
  /* initialize lock */
  #define snd_use_lock_init(lockp) atomic_set(lockp, 0)
  
  /* increment lock */
  #define snd_use_lock_use(lockp) atomic_inc(lockp)
  
  /* release lock */
  #define snd_use_lock_free(lockp) atomic_dec(lockp)
  
  /* wait until all locks are released */
  void snd_use_lock_sync_helper(snd_use_lock_t *lock, const char *file, int line);
  #define snd_use_lock_sync(lockp) snd_use_lock_sync_helper(lockp, __BASE_FILE__, __LINE__)
  
  #else /* SMP || CONFIG_SND_DEBUG */
  
  typedef spinlock_t snd_use_lock_t;	/* dummy */
  #define snd_use_lock_init(lockp) /**/
  #define snd_use_lock_use(lockp) /**/
  #define snd_use_lock_free(lockp) /**/
  #define snd_use_lock_sync(lockp) /**/
  
  #endif /* SMP || CONFIG_SND_DEBUG */
  
  #endif /* __SND_SEQ_LOCK_H */