Skip to content

Commit 05db19b

Browse files
colincrossAndroid (Google) Code Review
authored andcommitted
Merge "trigger kernel blocked stack trace on system server watchdog" into jb-mr1.1-dev
2 parents 38e8470 + 5df1d87 commit 05db19b

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

services/java/com/android/server/Watchdog.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@
3939
import android.util.Slog;
4040

4141
import java.io.File;
42+
import java.io.FileWriter;
43+
import java.io.IOException;
4244
import java.util.ArrayList;
4345
import java.util.Calendar;
4446

@@ -439,6 +441,16 @@ public void run() {
439441
dumpKernelStackTraces();
440442
}
441443

444+
// Trigger the kernel to dump all blocked threads to the kernel log
445+
try {
446+
FileWriter sysrq_trigger = new FileWriter("/proc/sysrq-trigger");
447+
sysrq_trigger.write("w");
448+
sysrq_trigger.close();
449+
} catch (IOException e) {
450+
Slog.e(TAG, "Failed to write to /proc/sysrq-trigger");
451+
Slog.e(TAG, e.getMessage());
452+
}
453+
442454
// Try to add the error to the dropbox, but assuming that the ActivityManager
443455
// itself may be deadlocked. (which has happened, causing this statement to
444456
// deadlock and the watchdog as a whole to be ineffective)

0 commit comments

Comments
 (0)