upload tizen1.0 source
[kernel/linux-2.6.36.git] / debian / templates / image.plain.bug / include-1tainted
1 TAINT_PROPRIETARY_MODULE=0
2 TAINT_FORCED_MODULE=1
3 TAINT_UNSAFE_SMP=2
4 TAINT_FORCED_RMMOD=3
5 TAINT_MACHINE_CHECK=4
6 TAINT_BAD_PAGE=5
7 TAINT_USER=6
8 TAINT_DIE=7
9 TAINT_OVERRIDDEN_ACPI_TABLE=8
10 TAINT_WARN=9
11 TAINT_CRAP=10
12
13 _check() {
14   if [ $(($tainted & 1<<$1)) -ne 0 ]; then
15     result_short="$result_short$2"
16     result_long="$result_long * $3\n"
17   fi
18 }
19
20 add_1tainted() {
21   tainted=$(cat /proc/sys/kernel/tainted)
22   if [ "$tainted" -gt 0 ]; then
23     local result_short result_long
24     _check $TAINT_PROPRIETARY_MODULE 'P' 'Proprietary module has been loaded.'
25     _check $TAINT_FORCED_MODULE 'F' 'Module has been forcibly loaded.'
26     _check $TAINT_UNSAFE_SMP 'S' 'SMP with CPUs not designed for SMP.'
27     _check $TAINT_FORCED_RMMOD 'R' 'User forced a module unload.'
28     _check $TAINT_MACHINE_CHECK 'M' 'System experienced a machine check exception.'
29     _check $TAINT_BAD_PAGE 'B' 'System has hit bad_page.'
30     _check $TAINT_USER 'U' 'Userspace-defined naughtiness.'
31     _check $TAINT_DIE 'D' 'Kernel has oopsed before.'
32     _check $TAINT_OVERRIDDEN_ACPI_TABLE 'A' 'ACPI table overridden.'
33     _check $TAINT_WARN 'W' 'Taint on warning.'
34     _check $TAINT_CRAP 'C' 'Module from drivers/staging has been loaded.'
35     echo "** Tainted: $result_short ($tainted)" >&3
36     printf "$result_long" >&3
37   else
38     echo '** Not tainted' >&3
39   fi
40   echo >&3
41 }
42
43 ask_1tainted() {
44   true
45 }