Blame view

arch/x86/kernel/paravirt-spinlocks.c 657 Bytes
d5de88413   Jeremy Fitzhardinge   x86: split spinlo...
1
2
3
4
5
6
7
8
  /*
   * Split spinlock implementation out into its own file, so it can be
   * compiled in a FTRACE-compatible way.
   */
  #include <linux/spinlock.h>
  #include <linux/module.h>
  
  #include <asm/paravirt.h>
087052b02   Ingo Molnar   x86: fix default_...
9
  static inline void
445c89514   Thomas Gleixner   locking: Convert ...
10
  default_spin_lock_flags(arch_spinlock_t *lock, unsigned long flags)
63d3a75d6   Jeremy Fitzhardinge   x86/paravirt: add...
11
  {
0199c4e68   Thomas Gleixner   locking: Convert ...
12
  	arch_spin_lock(lock);
63d3a75d6   Jeremy Fitzhardinge   x86/paravirt: add...
13
  }
d5de88413   Jeremy Fitzhardinge   x86: split spinlo...
14
15
16
17
18
19
  struct pv_lock_ops pv_lock_ops = {
  #ifdef CONFIG_SMP
  	.spin_is_locked = __ticket_spin_is_locked,
  	.spin_is_contended = __ticket_spin_is_contended,
  
  	.spin_lock = __ticket_spin_lock,
63d3a75d6   Jeremy Fitzhardinge   x86/paravirt: add...
20
  	.spin_lock_flags = default_spin_lock_flags,
d5de88413   Jeremy Fitzhardinge   x86: split spinlo...
21
22
23
24
  	.spin_trylock = __ticket_spin_trylock,
  	.spin_unlock = __ticket_spin_unlock,
  #endif
  };
25258ef76   Jeremy Fitzhardinge   x86: export pv_lo...
25
  EXPORT_SYMBOL(pv_lock_ops);
d5de88413   Jeremy Fitzhardinge   x86: split spinlo...
26