~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/tools/debugging/kernel-chktaint

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /tools/debugging/kernel-chktaint (Version linux-6.12-rc7) and /tools/debugging/kernel-chktaint (Version unix-v6-master)


  1 #! /bin/sh                                        
  2 # SPDX-License-Identifier: GPL-2.0                
  3 #                                                 
  4 # Randy Dunlap <rdunlap@infradead.org>, 2018       
  5 # Thorsten Leemhuis <linux@leemhuis.info>, 2018    
  6                                                   
  7 usage()                                           
  8 {                                                 
  9         cat <<EOF                                 
 10 usage: ${0##*/}                                   
 11        ${0##*/} <int>                             
 12                                                   
 13 Call without parameters to decode /proc/sys/ke    
 14                                                   
 15 Call with a positive integer as parameter to d    
 16 retrieved from /proc/sys/kernel/tainted on ano    
 17                                                   
 18 EOF                                               
 19 }                                                 
 20                                                   
 21 if [ "$1"x != "x" ]; then                         
 22         if  [ "$1"x == "--helpx" ] || [ "$1"x     
 23                 usage                             
 24                 exit 1                            
 25         elif  [ $1 -ge 0 ] 2>/dev/null ; then     
 26                 taint=$1                          
 27         else                                      
 28                 echo "Error: Parameter '$1' no    
 29                 exit 1                            
 30         fi                                        
 31 else                                              
 32         TAINTFILE="/proc/sys/kernel/tainted"      
 33         if [ ! -r $TAINTFILE ]; then              
 34                 echo "No file: $TAINTFILE"        
 35                 exit                              
 36         fi                                        
 37                                                   
 38         taint=`cat $TAINTFILE`                    
 39 fi                                                
 40                                                   
 41 if [ $taint -eq 0 ]; then                         
 42         echo "Kernel not Tainted"                 
 43         exit                                      
 44 else                                              
 45         echo "Kernel is \"tainted\" for the fo    
 46 fi                                                
 47                                                   
 48 T=$taint                                          
 49 out=                                              
 50                                                   
 51 addout() {                                        
 52         out=$out$1                                
 53 }                                                 
 54                                                   
 55 if [ `expr $T % 2` -eq 0 ]; then                  
 56         addout "G"                                
 57 else                                              
 58         addout "P"                                
 59         echo " * proprietary module was loaded    
 60 fi                                                
 61                                                   
 62 T=`expr $T / 2`                                   
 63 if [ `expr $T % 2` -eq 0 ]; then                  
 64         addout " "                                
 65 else                                              
 66         addout "F"                                
 67         echo " * module was force loaded (#1)"    
 68 fi                                                
 69                                                   
 70 T=`expr $T / 2`                                   
 71 if [ `expr $T % 2` -eq 0 ]; then                  
 72         addout " "                                
 73 else                                              
 74         addout "S"                                
 75         echo " * kernel running on an out of s    
 76 fi                                                
 77                                                   
 78 T=`expr $T / 2`                                   
 79 if [ `expr $T % 2` -eq 0 ]; then                  
 80         addout " "                                
 81 else                                              
 82         addout "R"                                
 83         echo " * module was force unloaded (#3    
 84 fi                                                
 85                                                   
 86 T=`expr $T / 2`                                   
 87 if [ `expr $T % 2` -eq 0 ]; then                  
 88         addout " "                                
 89 else                                              
 90         addout "M"                                
 91         echo " * processor reported a Machine     
 92 fi                                                
 93                                                   
 94 T=`expr $T / 2`                                   
 95 if [ `expr $T % 2` -eq 0 ]; then                  
 96         addout " "                                
 97 else                                              
 98         addout "B"                                
 99         echo " * bad page referenced or some u    
100 fi                                                
101                                                   
102 T=`expr $T / 2`                                   
103 if [ `expr $T % 2` -eq 0 ]; then                  
104         addout " "                                
105 else                                              
106         addout "U"                                
107         echo " * taint requested by userspace     
108 fi                                                
109                                                   
110 T=`expr $T / 2`                                   
111 if [ `expr $T % 2` -eq 0 ]; then                  
112         addout " "                                
113 else                                              
114         addout "D"                                
115         echo " * kernel died recently, i.e. th    
116 fi                                                
117                                                   
118 T=`expr $T / 2`                                   
119 if [ `expr $T % 2` -eq 0 ]; then                  
120         addout " "                                
121 else                                              
122         addout "A"                                
123         echo " * an ACPI table was overridden     
124 fi                                                
125                                                   
126 T=`expr $T / 2`                                   
127 if [ `expr $T % 2` -eq 0 ]; then                  
128         addout " "                                
129 else                                              
130         addout "W"                                
131         echo " * kernel issued warning (#9)"      
132 fi                                                
133                                                   
134 T=`expr $T / 2`                                   
135 if [ `expr $T % 2` -eq 0 ]; then                  
136         addout " "                                
137 else                                              
138         addout "C"                                
139         echo " * staging driver was loaded (#1    
140 fi                                                
141                                                   
142 T=`expr $T / 2`                                   
143 if [ `expr $T % 2` -eq 0 ]; then                  
144         addout " "                                
145 else                                              
146         addout "I"                                
147         echo " * workaround for bug in platfor    
148 fi                                                
149                                                   
150 T=`expr $T / 2`                                   
151 if [ `expr $T % 2` -eq 0 ]; then                  
152         addout " "                                
153 else                                              
154         addout "O"                                
155         echo " * externally-built ('out-of-tre    
156 fi                                                
157                                                   
158 T=`expr $T / 2`                                   
159 if [ `expr $T % 2` -eq 0 ]; then                  
160         addout " "                                
161 else                                              
162         addout "E"                                
163         echo " * unsigned module was loaded (#    
164 fi                                                
165                                                   
166 T=`expr $T / 2`                                   
167 if [ `expr $T % 2` -eq 0 ]; then                  
168         addout " "                                
169 else                                              
170         addout "L"                                
171         echo " * soft lockup occurred (#14)"      
172 fi                                                
173                                                   
174 T=`expr $T / 2`                                   
175 if [ `expr $T % 2` -eq 0 ]; then                  
176         addout " "                                
177 else                                              
178         addout "K"                                
179         echo " * kernel has been live patched     
180 fi                                                
181                                                   
182 T=`expr $T / 2`                                   
183 if [ `expr $T % 2` -eq 0 ]; then                  
184         addout " "                                
185 else                                              
186         addout "X"                                
187         echo " * auxiliary taint, defined for     
188                                                   
189 fi                                                
190                                                   
191 T=`expr $T / 2`                                   
192 if [ `expr $T % 2` -eq 0 ]; then                  
193         addout " "                                
194 else                                              
195         addout "T"                                
196         echo " * kernel was built with the str    
197 fi                                                
198                                                   
199 T=`expr $T / 2`                                   
200 if [ `expr $T % 2` -eq 0 ]; then                  
201         addout " "                                
202 else                                              
203         addout "N"                                
204         echo " * an in-kernel test (such as a     
205 fi                                                
206                                                   
207 echo "For a more detailed explanation of the v    
208 echo " Documentation/admin-guide/tainted-kerne    
209 echo " or https://kernel.org/doc/html/latest/a    
210 echo "Raw taint value as int/string: $taint/'$    
211 #EOF#                                             
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php