Blame view

drivers/tty/tty_mutex.c 659 Bytes
b07471fa5   Arnd Bergmann   tty: implement BT...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  #include <linux/tty.h>
  #include <linux/module.h>
  #include <linux/kallsyms.h>
  #include <linux/semaphore.h>
  #include <linux/sched.h>
  
  /*
   * The 'big tty mutex'
   *
   * This mutex is taken and released by tty_lock() and tty_unlock(),
   * replacing the older big kernel lock.
   * It can no longer be taken recursively, and does not get
   * released implicitly while sleeping.
   *
   * Don't use in new code.
   */
  static DEFINE_MUTEX(big_tty_mutex);
b07471fa5   Arnd Bergmann   tty: implement BT...
18
19
20
21
22
23
  
  /*
   * Getting the big tty mutex.
   */
  void __lockfunc tty_lock(void)
  {
b07471fa5   Arnd Bergmann   tty: implement BT...
24
  	mutex_lock(&big_tty_mutex);
b07471fa5   Arnd Bergmann   tty: implement BT...
25
26
27
28
29
  }
  EXPORT_SYMBOL(tty_lock);
  
  void __lockfunc tty_unlock(void)
  {
b07471fa5   Arnd Bergmann   tty: implement BT...
30
31
32
  	mutex_unlock(&big_tty_mutex);
  }
  EXPORT_SYMBOL(tty_unlock);