Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
lib
debug_locks.c
Go to the documentation of this file.
1
/*
2
* lib/debug_locks.c
3
*
4
* Generic place for common debugging facilities for various locks:
5
* spinlocks, rwlocks, mutexes and rwsems.
6
*
7
* Started by Ingo Molnar:
8
*
9
* Copyright (C) 2006 Red Hat, Inc., Ingo Molnar <
[email protected]
>
10
*/
11
#include <
linux/rwsem.h
>
12
#include <
linux/mutex.h
>
13
#include <linux/export.h>
14
#include <
linux/spinlock.h
>
15
#include <
linux/debug_locks.h
>
16
17
/*
18
* We want to turn all lock-debugging facilities on/off at once,
19
* via a global flag. The reason is that once a single bug has been
20
* detected and reported, there might be cascade of followup bugs
21
* that would just muddy the log. So we report the first one and
22
* shut up after that.
23
*/
24
int
debug_locks
= 1;
25
EXPORT_SYMBOL_GPL
(
debug_locks
);
26
27
/*
28
* The locking-testsuite uses <debug_locks_silent> to get a
29
* 'silent failure': nothing is printed to the console when
30
* a locking bug is detected.
31
*/
32
int
debug_locks_silent
;
33
34
/*
35
* Generic 'turn off all lock debugging' function:
36
*/
37
int
debug_locks_off
(
void
)
38
{
39
if
(__debug_locks_off()) {
40
if
(!
debug_locks_silent
) {
41
console_verbose();
42
return
1;
43
}
44
}
45
return
0;
46
}
Generated on Thu Jan 10 2013 14:55:27 for Linux Kernel by
1.8.2