public class com.android.server.BootReceiver extends android.content.BroadcastReceiver
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.android.server.BootReceiver
super_class: android.content.BroadcastReceiver
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "BootReceiver"
private static final int LOG_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.io.File TOMBSTONE_DIR;
descriptor: Ljava/io/File;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String TAG_TOMBSTONE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "SYSTEM_TOMBSTONE"
private static final java.lang.String OLD_UPDATER_PACKAGE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "com.google.android.systemupdater"
private static final java.lang.String OLD_UPDATER_CLASS;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "com.google.android.systemupdater.SystemUpdateReceiver"
private static android.os.FileObserver sTombstoneObserver;
descriptor: Landroid/os/FileObserver;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.lang.String LOG_FILES_FILE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "log-files.xml"
private static final android.util.AtomicFile sFile;
descriptor: Landroid/util/AtomicFile;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String LAST_HEADER_FILE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "last-header.txt"
private static final java.io.File lastHeaderFile;
descriptor: Ljava/io/File;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String FS_STAT_PATTERN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "fs_stat,[^,]*/([^/,]+),(0x[0-9a-fA-F]+)"
private static final int FS_STAT_FS_FIXED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1024
private static final java.lang.String FSCK_PASS_PATTERN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Pass ([1-9]E?):"
private static final java.lang.String FSCK_TREE_OPTIMIZATION_PATTERN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "Inode [0-9]+ extent tree.*could be shorter"
private static final java.lang.String FSCK_FS_MODIFIED;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "FILE SYSTEM WAS MODIFIED"
private static final java.lang.String[] MOUNT_DURATION_PROPS_POSTFIX;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String[] LAST_KMSG_FILES;
descriptor: [Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.String LAST_SHUTDOWN_TIME_PATTERN;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "powerctl_shutdown_time_ms:([0-9]+):([0-9]+)"
private static final int UMOUNT_STATUS_NOT_AVAILABLE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final java.lang.String SHUTDOWN_METRICS_FILE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "/data/system/shutdown-metrics.txt"
private static final java.lang.String SHUTDOWN_TRON_METRICS_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "shutdown_"
private static final java.lang.String METRIC_SYSTEM_SERVER;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "shutdown_system_server"
private static final java.lang.String METRIC_SHUTDOWN_TIME_START;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "begin_shutdown"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: ldc "ro.debuggable"
iconst_0
invokestatic android.os.SystemProperties.getInt:(Ljava/lang/String;I)I
iconst_1
if_icmpne 1
ldc 98304
goto 2
StackMap locals:
StackMap stack:
1: ldc 65536
2: StackMap locals:
StackMap stack: int
putstatic com.android.server.BootReceiver.LOG_SIZE:I
3: new java.io.File
dup
ldc "/data/tombstones"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
putstatic com.android.server.BootReceiver.TOMBSTONE_DIR:Ljava/io/File;
4: aconst_null
putstatic com.android.server.BootReceiver.sTombstoneObserver:Landroid/os/FileObserver;
5: new android.util.AtomicFile
dup
new java.io.File
dup
6: invokestatic android.os.Environment.getDataSystemDirectory:()Ljava/io/File;
ldc "log-files.xml"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
ldc "log-files"
7: invokespecial android.util.AtomicFile.<init>:(Ljava/io/File;Ljava/lang/String;)V
putstatic com.android.server.BootReceiver.sFile:Landroid/util/AtomicFile;
8: new java.io.File
dup
9: invokestatic android.os.Environment.getDataSystemDirectory:()Ljava/io/File;
ldc "last-header.txt"
10: invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
putstatic com.android.server.BootReceiver.lastHeaderFile:Ljava/io/File;
11: iconst_3
anewarray java.lang.String
dup
iconst_0
ldc "early"
aastore
dup
iconst_1
ldc "default"
aastore
dup
iconst_2
ldc "late"
aastore
12: putstatic com.android.server.BootReceiver.MOUNT_DURATION_PROPS_POSTFIX:[Ljava/lang/String;
13: iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "/sys/fs/pstore/console-ramoops"
aastore
dup
iconst_1
ldc "/proc/last_kmsg"
aastore
14: putstatic com.android.server.BootReceiver.LAST_KMSG_FILES:[Ljava/lang/String;
15: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial android.content.BroadcastReceiver.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/server/BootReceiver;
public void onReceive(android.content.Context, android.content.Intent);
descriptor: (Landroid/content/Context;Landroid/content/Intent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new com.android.server.BootReceiver$1
dup
aload 0
aload 1
invokespecial com.android.server.BootReceiver$1.<init>:(Lcom/android/server/BootReceiver;Landroid/content/Context;)V
1: invokevirtual com.android.server.BootReceiver$1.start:()V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/android/server/BootReceiver;
0 3 1 context Landroid/content/Context;
0 3 2 intent Landroid/content/Intent;
MethodParameters:
Name Flags
context final
intent
private void removeOldUpdatePackages(android.content.Context);
descriptor: (Landroid/content/Context;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "com.google.android.systemupdater"
ldc "com.google.android.systemupdater.SystemUpdateReceiver"
invokestatic android.provider.Downloads.removeAllDownloadsByPackage:(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/android/server/BootReceiver;
0 2 1 context Landroid/content/Context;
MethodParameters:
Name Flags
context
private java.lang.String getPreviousBootHeaders();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic com.android.server.BootReceiver.lastHeaderFile:Ljava/io/File;
iconst_0
aconst_null
invokestatic android.os.FileUtils.readTextFile:(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
1: areturn
2: StackMap locals:
StackMap stack: java.io.IOException
pop
3: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/android/server/BootReceiver;
Exception table:
from to target type
0 1 2 Class java.io.IOException
private java.lang.String getCurrentBootHeaders();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
sipush 512
invokespecial java.lang.StringBuilder.<init>:(I)V
1: ldc "Build: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic android.os.Build.FINGERPRINT:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc "Hardware: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic android.os.Build.BOARD:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "Revision: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: ldc "ro.revision"
ldc ""
invokestatic android.os.SystemProperties.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: ldc "Bootloader: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic android.os.Build.BOOTLOADER:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc "Radio: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokestatic android.os.Build.getRadioVersion:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: ldc "Kernel: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: new java.io.File
dup
ldc "/proc/version"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
sipush 1024
ldc "...\n"
invokestatic android.os.FileUtils.readTextFile:(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/android/server/BootReceiver;
Exceptions:
throws java.io.IOException
private java.lang.String getBootHeadersToLogAndUpdate();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual com.android.server.BootReceiver.getPreviousBootHeaders:()Ljava/lang/String;
astore 1
start local 1 1: aload 0
invokevirtual com.android.server.BootReceiver.getCurrentBootHeaders:()Ljava/lang/String;
astore 2
start local 2 2: getstatic com.android.server.BootReceiver.lastHeaderFile:Ljava/io/File;
aload 2
invokestatic android.os.FileUtils.stringToFile:(Ljava/io/File;Ljava/lang/String;)V
3: goto 6
StackMap locals: com.android.server.BootReceiver java.lang.String java.lang.String
StackMap stack: java.io.IOException
4: astore 3
start local 3 5: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "Error writing "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.android.server.BootReceiver.lastHeaderFile:Ljava/io/File;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokestatic android.util.Slog.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 3 6: StackMap locals:
StackMap stack:
aload 1
ifnonnull 8
7: new java.lang.StringBuilder
dup
ldc "isPrevious: false\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
8: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "isPrevious: true\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/android/server/BootReceiver;
1 9 1 oldHeaders Ljava/lang/String;
2 9 2 newHeaders Ljava/lang/String;
5 6 3 e Ljava/io/IOException;
Exception table:
from to target type
2 3 4 Class java.io.IOException
Exceptions:
throws java.io.IOException
private void logBootEvents(android.content.Context);
descriptor: (Landroid/content/Context;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=2
start local 0 start local 1 0: aload 1
ldc "dropbox"
invokevirtual android.content.Context.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
checkcast android.os.DropBoxManager
astore 2
start local 2 1: aload 0
invokevirtual com.android.server.BootReceiver.getBootHeadersToLogAndUpdate:()Ljava/lang/String;
astore 3
start local 3 2: ldc "ro.boot.bootreason"
aconst_null
invokestatic android.os.SystemProperties.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 3: aload 1
invokestatic android.os.RecoverySystem.handleAftermath:(Landroid/content/Context;)Ljava/lang/String;
astore 5
start local 5 4: aload 5
ifnull 6
aload 2
ifnull 6
5: aload 2
ldc "SYSTEM_RECOVERY_LOG"
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual android.os.DropBoxManager.addText:(Ljava/lang/String;Ljava/lang/String;)V
6: StackMap locals: com.android.server.BootReceiver android.content.Context android.os.DropBoxManager java.lang.String java.lang.String java.lang.String
StackMap stack:
ldc ""
astore 6
start local 6 7: aload 4
ifnull 14
8: new java.lang.StringBuilder
dup
sipush 512
invokespecial java.lang.StringBuilder.<init>:(I)V
9: ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: ldc "Boot info:\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: ldc "Last boot reason: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: astore 6
14: StackMap locals: java.lang.String
StackMap stack:
invokestatic com.android.server.BootReceiver.readTimestamps:()Ljava/util/HashMap;
astore 7
start local 7 15: ldc "ro.runtime.firstboot"
lconst_0
invokestatic android.os.SystemProperties.getLong:(Ljava/lang/String;J)J
lconst_0
lcmp
ifne 37
16: invokestatic android.os.storage.StorageManager.inCryptKeeperBounce:()Z
ifne 19
17: invokestatic java.lang.System.currentTimeMillis:()J
invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
astore 8
start local 8 18: ldc "ro.runtime.firstboot"
aload 8
invokestatic android.os.SystemProperties.set:(Ljava/lang/String;Ljava/lang/String;)V
end local 8 19: StackMap locals: java.util.HashMap
StackMap stack:
aload 2
ifnull 20
aload 2
ldc "SYSTEM_BOOT"
aload 3
invokevirtual android.os.DropBoxManager.addText:(Ljava/lang/String;Ljava/lang/String;)V
20: StackMap locals:
StackMap stack:
aload 2
aload 7
aload 3
aload 6
21: ldc "/proc/last_kmsg"
getstatic com.android.server.BootReceiver.LOG_SIZE:I
ineg
ldc "SYSTEM_LAST_KMSG"
22: invokestatic com.android.server.BootReceiver.addFileWithFootersToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
23: aload 2
aload 7
aload 3
aload 6
24: ldc "/sys/fs/pstore/console-ramoops"
getstatic com.android.server.BootReceiver.LOG_SIZE:I
ineg
ldc "SYSTEM_LAST_KMSG"
25: invokestatic com.android.server.BootReceiver.addFileWithFootersToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
26: aload 2
aload 7
aload 3
aload 6
27: ldc "/sys/fs/pstore/console-ramoops-0"
getstatic com.android.server.BootReceiver.LOG_SIZE:I
ineg
ldc "SYSTEM_LAST_KMSG"
28: invokestatic com.android.server.BootReceiver.addFileWithFootersToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
29: aload 2
aload 7
aload 3
ldc "/cache/recovery/log"
getstatic com.android.server.BootReceiver.LOG_SIZE:I
ineg
30: ldc "SYSTEM_RECOVERY_LOG"
31: invokestatic com.android.server.BootReceiver.addFileToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
32: aload 2
aload 7
aload 3
ldc "/cache/recovery/last_kmsg"
33: getstatic com.android.server.BootReceiver.LOG_SIZE:I
ineg
ldc "SYSTEM_RECOVERY_KMSG"
34: invokestatic com.android.server.BootReceiver.addFileToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
35: aload 2
aload 7
aload 3
getstatic com.android.server.BootReceiver.LOG_SIZE:I
ineg
ldc "SYSTEM_AUDIT"
invokestatic com.android.server.BootReceiver.addAuditErrorsToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;ILjava/lang/String;)V
36: goto 38
37: StackMap locals:
StackMap stack:
aload 2
ifnull 38
aload 2
ldc "SYSTEM_RESTART"
aload 3
invokevirtual android.os.DropBoxManager.addText:(Ljava/lang/String;Ljava/lang/String;)V
38: StackMap locals:
StackMap stack:
invokestatic com.android.server.BootReceiver.logFsShutdownTime:()V
39: invokestatic com.android.server.BootReceiver.logFsMountTime:()V
40: aload 2
aload 7
aload 3
getstatic com.android.server.BootReceiver.LOG_SIZE:I
ineg
ldc "SYSTEM_FSCK"
invokestatic com.android.server.BootReceiver.addFsckErrorsToDropBoxAndLogFsStat:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;ILjava/lang/String;)V
41: invokestatic com.android.server.BootReceiver.logSystemServerShutdownTimeMetrics:()V
42: getstatic com.android.server.BootReceiver.TOMBSTONE_DIR:Ljava/io/File;
invokevirtual java.io.File.listFiles:()[Ljava/io/File;
astore 8
start local 8 43: iconst_0
istore 9
start local 9 44: goto 50
45: StackMap locals: java.io.File[] int
StackMap stack:
aload 8
iload 9
aaload
invokevirtual java.io.File.isFile:()Z
ifeq 49
46: aload 2
aload 7
aload 3
aload 8
iload 9
aaload
invokevirtual java.io.File.getPath:()Ljava/lang/String;
47: getstatic com.android.server.BootReceiver.LOG_SIZE:I
ldc "SYSTEM_TOMBSTONE"
48: invokestatic com.android.server.BootReceiver.addFileToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
49: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
50: aload 8
ifnull 51
iload 9
aload 8
arraylength
if_icmplt 45
end local 9 51: StackMap locals:
StackMap stack:
aload 0
aload 7
invokevirtual com.android.server.BootReceiver.writeTimestamps:(Ljava/util/HashMap;)V
52: new com.android.server.BootReceiver$2
dup
aload 0
getstatic com.android.server.BootReceiver.TOMBSTONE_DIR:Ljava/io/File;
invokevirtual java.io.File.getPath:()Ljava/lang/String;
sipush 256
aload 2
aload 3
invokespecial com.android.server.BootReceiver$2.<init>:(Lcom/android/server/BootReceiver;Ljava/lang/String;ILandroid/os/DropBoxManager;Ljava/lang/String;)V
putstatic com.android.server.BootReceiver.sTombstoneObserver:Landroid/os/FileObserver;
53: getstatic com.android.server.BootReceiver.sTombstoneObserver:Landroid/os/FileObserver;
invokevirtual android.os.FileObserver.startWatching:()V
54: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 55 0 this Lcom/android/server/BootReceiver;
0 55 1 ctx Landroid/content/Context;
1 55 2 db Landroid/os/DropBoxManager;
2 55 3 headers Ljava/lang/String;
3 55 4 bootReason Ljava/lang/String;
4 55 5 recovery Ljava/lang/String;
7 55 6 lastKmsgFooter Ljava/lang/String;
15 55 7 timestamps Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;
18 19 8 now Ljava/lang/String;
43 55 8 tombstoneFiles [Ljava/io/File;
44 51 9 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
ctx
private static void addFileToDropBox(android.os.DropBoxManager, java.util.HashMap<java.lang.String, java.lang.Long>, java.lang.String, java.lang.String, int, java.lang.String);
descriptor: (Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
ldc ""
aload 3
iload 4
aload 5
invokestatic com.android.server.BootReceiver.addFileWithFootersToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
1: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 db Landroid/os/DropBoxManager;
0 2 1 timestamps Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;
0 2 2 headers Ljava/lang/String;
0 2 3 filename Ljava/lang/String;
0 2 4 maxSize I
0 2 5 tag Ljava/lang/String;
Exceptions:
throws java.io.IOException
Signature: (Landroid/os/DropBoxManager;Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
MethodParameters:
Name Flags
db
timestamps
headers
filename
maxSize
tag
private static void addFileWithFootersToDropBox(android.os.DropBoxManager, java.util.HashMap<java.lang.String, java.lang.Long>, java.lang.String, java.lang.String, java.lang.String, int, java.lang.String);
descriptor: (Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=12, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
ifnull 1
aload 0
aload 6
invokevirtual android.os.DropBoxManager.isTagEnabled:(Ljava/lang/String;)Z
ifne 2
StackMap locals:
StackMap stack:
1: return
2: StackMap locals:
StackMap stack:
new java.io.File
dup
aload 4
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 7
start local 7 3: aload 7
invokevirtual java.io.File.lastModified:()J
lstore 8
start local 8 4: lload 8
lconst_0
lcmp
ifgt 5
return
5: StackMap locals: java.io.File long
StackMap stack:
aload 1
aload 4
invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
ifeq 7
aload 1
aload 4
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lload 8
lcmp
ifne 7
6: return
7: StackMap locals:
StackMap stack:
aload 1
aload 4
lload 8
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 7
iload 5
ldc "[[TRUNCATED]]\n"
invokestatic android.os.FileUtils.readTextFile:(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
astore 10
start local 10 9: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 11
start local 11 10: aload 6
ldc "SYSTEM_TOMBSTONE"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
aload 10
ldc ">>> system_server <<<"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 12
11: aload 0
ldc "system_server_native_crash"
aload 11
aload 4
iload 5
invokestatic com.android.server.BootReceiver.addTextToDropBox:(Landroid/os/DropBoxManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
12: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 0
aload 6
aload 11
aload 4
iload 5
invokestatic com.android.server.BootReceiver.addTextToDropBox:(Landroid/os/DropBoxManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
13: return
end local 11 end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 db Landroid/os/DropBoxManager;
0 14 1 timestamps Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;
0 14 2 headers Ljava/lang/String;
0 14 3 footers Ljava/lang/String;
0 14 4 filename Ljava/lang/String;
0 14 5 maxSize I
0 14 6 tag Ljava/lang/String;
3 14 7 file Ljava/io/File;
4 14 8 fileTime J
9 14 10 fileContents Ljava/lang/String;
10 14 11 text Ljava/lang/String;
Exceptions:
throws java.io.IOException
Signature: (Landroid/os/DropBoxManager;Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
MethodParameters:
Name Flags
db
timestamps
headers
footers
filename
maxSize
tag
private static void addTextToDropBox(android.os.DropBoxManager, java.lang.String, java.lang.String, java.lang.String, int);
descriptor: (Landroid/os/DropBoxManager;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=5
0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tDropboxLogTags cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
db
tag
text
filename
maxSize
private static void addAuditErrorsToDropBox(android.os.DropBoxManager, java.util.HashMap<java.lang.String, java.lang.Long>, java.lang.String, int, java.lang.String);
descriptor: (Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;ILjava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
ifnull 1
aload 0
aload 4
invokevirtual android.os.DropBoxManager.isTagEnabled:(Ljava/lang/String;)Z
ifne 2
StackMap locals:
StackMap stack:
1: return
2: StackMap locals:
StackMap stack:
ldc "BootReceiver"
ldc "Copying audit failures to DropBox"
invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
3: new java.io.File
dup
ldc "/proc/last_kmsg"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 5
start local 5 4: aload 5
invokevirtual java.io.File.lastModified:()J
lstore 6
start local 6 5: lload 6
lconst_0
lcmp
ifgt 11
6: new java.io.File
dup
ldc "/sys/fs/pstore/console-ramoops"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 5
7: aload 5
invokevirtual java.io.File.lastModified:()J
lstore 6
8: lload 6
lconst_0
lcmp
ifgt 11
9: new java.io.File
dup
ldc "/sys/fs/pstore/console-ramoops-0"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 5
10: aload 5
invokevirtual java.io.File.lastModified:()J
lstore 6
11: StackMap locals: java.io.File long
StackMap stack:
lload 6
lconst_0
lcmp
ifgt 12
return
12: StackMap locals:
StackMap stack:
aload 1
aload 4
invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
ifeq 14
aload 1
aload 4
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
invokevirtual java.lang.Long.longValue:()J
lload 6
lcmp
ifne 14
13: return
14: StackMap locals:
StackMap stack:
aload 1
aload 4
lload 6
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
15: aload 5
iload 3
ldc "[[TRUNCATED]]\n"
invokestatic android.os.FileUtils.readTextFile:(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
astore 8
start local 8 16: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 9
start local 9 17: aload 8
ldc "\n"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 22
StackMap locals: android.os.DropBoxManager java.util.HashMap java.lang.String int java.lang.String java.io.File long java.lang.String java.lang.StringBuilder top int int java.lang.String[]
StackMap stack:
18: aload 13
iload 11
aaload
astore 10
start local 10 19: aload 10
ldc "audit"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 21
20: aload 9
new java.lang.StringBuilder
dup
aload 10
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 10 21: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
22: iload 11
iload 12
if_icmplt 18
23: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "Copied "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " worth of audits to DropBox"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
24: aload 0
aload 4
new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual android.os.DropBoxManager.addText:(Ljava/lang/String;Ljava/lang/String;)V
25: return
end local 9 end local 8 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 db Landroid/os/DropBoxManager;
0 26 1 timestamps Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;
0 26 2 headers Ljava/lang/String;
0 26 3 maxSize I
0 26 4 tag Ljava/lang/String;
4 26 5 file Ljava/io/File;
5 26 6 fileTime J
16 26 8 log Ljava/lang/String;
17 26 9 sb Ljava/lang/StringBuilder;
19 21 10 line Ljava/lang/String;
Exceptions:
throws java.io.IOException
Signature: (Landroid/os/DropBoxManager;Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;Ljava/lang/String;ILjava/lang/String;)V
MethodParameters:
Name Flags
db
timestamps
headers
maxSize
tag
private static void addFsckErrorsToDropBoxAndLogFsStat(android.os.DropBoxManager, java.util.HashMap<java.lang.String, java.lang.Long>, java.lang.String, int, java.lang.String);
descriptor: (Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;ILjava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=20, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_1
istore 5
start local 5 1: aload 0
ifnull 2
aload 0
aload 4
invokevirtual android.os.DropBoxManager.isTagEnabled:(Ljava/lang/String;)Z
ifne 3
2: StackMap locals: int
StackMap stack:
iconst_0
istore 5
3: StackMap locals:
StackMap stack:
iconst_0
istore 6
start local 6 4: ldc "BootReceiver"
ldc "Checking for fsck errors"
invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
5: new java.io.File
dup
ldc "/dev/fscklogs/log"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 7
start local 7 6: aload 7
invokevirtual java.io.File.lastModified:()J
lstore 8
start local 8 7: lload 8
lconst_0
lcmp
ifgt 8
return
8: StackMap locals: int java.io.File long
StackMap stack:
aload 7
iload 3
ldc "[[TRUNCATED]]\n"
invokestatic android.os.FileUtils.readTextFile:(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
astore 10
start local 10 9: ldc "fs_stat,[^,]*/([^/,]+),(0x[0-9a-fA-F]+)"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
astore 11
start local 11 10: aload 10
ldc "\n"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 12
start local 12 11: iconst_0
istore 13
start local 13 12: iconst_0
istore 14
start local 14 13: aload 12
dup
astore 18
arraylength
istore 17
iconst_0
istore 16
goto 27
StackMap locals: android.os.DropBoxManager java.util.HashMap java.lang.String int java.lang.String int int java.io.File long java.lang.String java.util.regex.Pattern java.lang.String[] int int top int int java.lang.String[]
StackMap stack:
14: aload 18
iload 16
aaload
astore 15
start local 15 15: aload 15
ldc "FILE SYSTEM WAS MODIFIED"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 18
16: iconst_1
istore 6
17: goto 25
StackMap locals: android.os.DropBoxManager java.util.HashMap java.lang.String int java.lang.String int int java.io.File long java.lang.String java.util.regex.Pattern java.lang.String[] int int java.lang.String int int java.lang.String[]
StackMap stack:
18: aload 15
ldc "fs_stat"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 25
19: aload 11
aload 15
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 19
start local 19 20: aload 19
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 24
21: aload 19
aload 12
iload 14
iload 13
invokestatic com.android.server.BootReceiver.handleFsckFsStat:(Ljava/util/regex/Matcher;[Ljava/lang/String;II)V
22: iload 13
istore 14
23: goto 25
24: StackMap locals: java.util.regex.Matcher
StackMap stack:
ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "cannot parse fs_stat:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
end local 19 25: StackMap locals:
StackMap stack:
iinc 13 1
end local 15 26: iinc 16 1
StackMap locals: android.os.DropBoxManager java.util.HashMap java.lang.String int java.lang.String int int java.io.File long java.lang.String java.util.regex.Pattern java.lang.String[] int int top int int java.lang.String[]
StackMap stack:
27: iload 16
iload 17
if_icmplt 14
28: iload 5
ifeq 30
iload 6
ifeq 30
29: aload 0
aload 1
aload 2
ldc "/dev/fscklogs/log"
iload 3
aload 4
invokestatic com.android.server.BootReceiver.addFileToDropBox:(Landroid/os/DropBoxManager;Ljava/util/HashMap;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
30: StackMap locals: android.os.DropBoxManager java.util.HashMap java.lang.String int java.lang.String int int java.io.File long java.lang.String java.util.regex.Pattern java.lang.String[] int int
StackMap stack:
aload 7
invokevirtual java.io.File.delete:()Z
pop
31: return
end local 14 end local 13 end local 12 end local 11 end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 db Landroid/os/DropBoxManager;
0 32 1 timestamps Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;
0 32 2 headers Ljava/lang/String;
0 32 3 maxSize I
0 32 4 tag Ljava/lang/String;
1 32 5 uploadEnabled Z
4 32 6 uploadNeeded Z
6 32 7 file Ljava/io/File;
7 32 8 fileTime J
9 32 10 log Ljava/lang/String;
10 32 11 pattern Ljava/util/regex/Pattern;
11 32 12 lines [Ljava/lang/String;
12 32 13 lineNumber I
13 32 14 lastFsStatLineNumber I
15 26 15 line Ljava/lang/String;
20 25 19 matcher Ljava/util/regex/Matcher;
Exceptions:
throws java.io.IOException
Signature: (Landroid/os/DropBoxManager;Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;Ljava/lang/String;ILjava/lang/String;)V
MethodParameters:
Name Flags
db
timestamps
headers
maxSize
tag
private static void logFsMountTime();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=0
0: getstatic com.android.server.BootReceiver.MOUNT_DURATION_PROPS_POSTFIX:[Ljava/lang/String;
dup
astore 3
arraylength
istore 2
iconst_0
istore 1
goto 6
StackMap locals: top int int java.lang.String[]
StackMap stack:
1: aload 3
iload 1
aaload
astore 0
start local 0 2: new java.lang.StringBuilder
dup
ldc "ro.boottime.init.mount_all."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
invokestatic android.os.SystemProperties.getInt:(Ljava/lang/String;I)I
istore 4
start local 4 3: iload 4
ifeq 5
4: aconst_null
new java.lang.StringBuilder
dup
ldc "boot_mount_all_duration_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iload 4
invokestatic com.android.internal.logging.MetricsLogger.histogram:(Landroid/content/Context;Ljava/lang/String;I)V
end local 4 end local 0 5: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
6: iload 1
iload 2
if_icmplt 1
7: return
LocalVariableTable:
Start End Slot Name Signature
2 5 0 propPostfix Ljava/lang/String;
3 5 4 duration I
private static void logSystemServerShutdownTimeMetrics();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=12, args_size=0
0: new java.io.File
dup
ldc "/data/system/shutdown-metrics.txt"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 0
start local 0 1: aconst_null
astore 1
start local 1 2: aload 0
invokevirtual java.io.File.exists:()Z
ifeq 7
3: aload 0
iconst_0
aconst_null
invokestatic android.os.FileUtils.readTextFile:(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
astore 1
4: goto 7
StackMap locals: java.io.File java.lang.String
StackMap stack: java.io.IOException
5: astore 2
start local 2 6: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "Problem reading "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokestatic android.util.Slog.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
end local 2 7: StackMap locals:
StackMap stack:
aload 1
invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
ifne 34
8: aconst_null
astore 2
start local 2 9: aconst_null
astore 3
start local 3 10: aconst_null
astore 4
start local 4 11: aconst_null
astore 5
start local 5 12: aload 1
ldc ","
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 6
start local 6 13: aload 6
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 32
StackMap locals: java.io.File java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String[] top int int java.lang.String[]
StackMap stack:
14: aload 10
iload 8
aaload
astore 7
start local 7 15: aload 7
ldc ":"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 11
start local 11 16: aload 11
arraylength
iconst_2
if_icmpeq 19
17: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "Wrong format of shutdown metrics - "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
18: goto 31
19: StackMap locals: java.io.File java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String[] java.lang.String int int java.lang.String[] java.lang.String[]
StackMap stack:
aload 11
iconst_0
aaload
ldc "shutdown_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 23
20: aload 11
iconst_0
aaload
aload 11
iconst_1
aaload
invokestatic com.android.server.BootReceiver.logTronShutdownMetric:(Ljava/lang/String;Ljava/lang/String;)V
21: aload 11
iconst_0
aaload
ldc "shutdown_system_server"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 23
22: aload 11
iconst_1
aaload
astore 5
23: StackMap locals:
StackMap stack:
aload 11
iconst_0
aaload
ldc "reboot"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 26
24: aload 11
iconst_1
aaload
astore 2
25: goto 31
StackMap locals:
StackMap stack:
26: aload 11
iconst_0
aaload
ldc "reason"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 29
27: aload 11
iconst_1
aaload
astore 3
28: goto 31
StackMap locals:
StackMap stack:
29: aload 11
iconst_0
aaload
ldc "begin_shutdown"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 31
30: aload 11
iconst_1
aaload
astore 4
end local 11 end local 7 31: StackMap locals: java.io.File java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String[] top int int java.lang.String[]
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
32: iload 8
iload 9
if_icmplt 14
33: aload 2
aload 3
aload 4
aload 5
invokestatic com.android.server.BootReceiver.logStatsdShutdownAtom:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
end local 6 end local 5 end local 4 end local 3 end local 2 34: StackMap locals: java.io.File java.lang.String
StackMap stack:
aload 0
invokevirtual java.io.File.delete:()Z
pop
35: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 36 0 metricsFile Ljava/io/File;
2 36 1 metricsStr Ljava/lang/String;
6 7 2 e Ljava/io/IOException;
9 34 2 reboot Ljava/lang/String;
10 34 3 reason Ljava/lang/String;
11 34 4 start_time Ljava/lang/String;
12 34 5 duration Ljava/lang/String;
13 34 6 array [Ljava/lang/String;
15 31 7 keyValueStr Ljava/lang/String;
16 31 11 keyValue [Ljava/lang/String;
Exception table:
from to target type
3 4 5 Class java.io.IOException
private static void logTronShutdownMetric(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 2
start local 2 1: goto 5
end local 2 StackMap locals:
StackMap stack: java.lang.NumberFormatException
2: pop
3: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "Cannot parse metric "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " int value - "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.e:(Ljava/lang/String;Ljava/lang/String;)I
pop
4: return
start local 2 5: StackMap locals: int
StackMap stack:
iload 2
iflt 7
6: aconst_null
aload 0
iload 2
invokestatic com.android.internal.logging.MetricsLogger.histogram:(Landroid/content/Context;Ljava/lang/String;I)V
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 metricName Ljava/lang/String;
0 8 1 valueStr Ljava/lang/String;
1 2 2 value I
5 8 2 value I
Exception table:
from to target type
0 1 2 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
metricName
valueStr
private static void logStatsdShutdownAtom(java.lang.String, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=4
0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tSHUTDOWN_SEQUENCE_REPORTED cannot be resolved or is not a field\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
rebootStr
reasonStr
startStr
durationStr
private static void logFsShutdownTime();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=0
0: aconst_null
astore 0
start local 0 1: getstatic com.android.server.BootReceiver.LAST_KMSG_FILES:[Ljava/lang/String;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 8
StackMap locals: java.io.File top int int java.lang.String[]
StackMap stack:
2: aload 4
iload 2
aaload
astore 1
start local 1 3: new java.io.File
dup
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 5
start local 5 4: aload 5
invokevirtual java.io.File.exists:()Z
ifne 5
goto 7
5: StackMap locals: java.io.File java.lang.String int int java.lang.String[] java.io.File
StackMap stack:
aload 5
astore 0
6: goto 9
end local 5 end local 1 7: StackMap locals: java.io.File top int int java.lang.String[]
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
8: iload 2
iload 3
if_icmplt 2
9: StackMap locals: java.io.File
StackMap stack:
aload 0
ifnonnull 11
10: return
11: StackMap locals:
StackMap stack:
aload 0
sipush -16384
aconst_null
invokestatic android.os.FileUtils.readTextFile:(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
astore 1
start local 1 12: goto 16
end local 1 StackMap locals:
StackMap stack: java.io.IOException
13: astore 2
start local 2 14: ldc "BootReceiver"
ldc "cannot read last msg"
aload 2
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
pop
15: return
end local 2 start local 1 16: StackMap locals: java.lang.String
StackMap stack:
ldc "powerctl_shutdown_time_ms:([0-9]+):([0-9]+)"
bipush 8
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;I)Ljava/util/regex/Pattern;
astore 2
start local 2 17: aload 2
aload 1
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 3
start local 3 18: aload 3
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 27
19: aconst_null
ldc "boot_fs_shutdown_duration"
20: aload 3
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
21: invokestatic com.android.internal.logging.MetricsLogger.histogram:(Landroid/content/Context;Ljava/lang/String;I)V
22: aconst_null
ldc "boot_fs_shutdown_umount_stat"
23: aload 3
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
24: invokestatic com.android.internal.logging.MetricsLogger.histogram:(Landroid/content/Context;Ljava/lang/String;I)V
25: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "boot_fs_shutdown,"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
26: goto 31
27: StackMap locals: java.util.regex.Pattern java.util.regex.Matcher
StackMap stack:
aconst_null
ldc "boot_fs_shutdown_umount_stat"
28: iconst_4
29: invokestatic com.android.internal.logging.MetricsLogger.histogram:(Landroid/content/Context;Ljava/lang/String;I)V
30: ldc "BootReceiver"
ldc "boot_fs_shutdown, string not found"
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
31: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 32 0 f Ljava/io/File;
3 7 1 fileName Ljava/lang/String;
4 7 5 file Ljava/io/File;
12 13 1 lines Ljava/lang/String;
16 32 1 lines Ljava/lang/String;
14 16 2 e Ljava/io/IOException;
17 32 2 pattern Ljava/util/regex/Pattern;
18 32 3 matcher Ljava/util/regex/Matcher;
Exception table:
from to target type
11 12 13 Class java.io.IOException
public static int fixFsckFsStat(java.lang.String, int, java.lang.String[], int, int);
descriptor: (Ljava/lang/String;I[Ljava/lang/String;II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=17, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 1
istore 5
start local 5 1: iload 5
sipush 1024
iand
ifeq 70
2: ldc "Pass ([1-9]E?):"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
astore 6
start local 6 3: ldc "Inode [0-9]+ extent tree.*could be shorter"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
astore 7
start local 7 4: ldc ""
astore 8
start local 8 5: iconst_0
istore 9
start local 9 6: iconst_0
istore 10
start local 10 7: iconst_0
istore 11
start local 11 8: iconst_0
istore 12
start local 12 9: aconst_null
astore 13
start local 13 10: iload 3
istore 14
start local 14 11: goto 56
12: StackMap locals: java.lang.String int java.lang.String[] int int int java.util.regex.Pattern java.util.regex.Pattern java.lang.String int int int int java.lang.String int
StackMap stack:
aload 2
iload 14
aaload
astore 15
start local 15 13: aload 15
ldc "FILE SYSTEM WAS MODIFIED"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 15
14: goto 57
15: StackMap locals: java.lang.String
StackMap stack:
aload 15
ldc "Pass "
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 20
16: aload 6
aload 15
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 16
start local 16 17: aload 16
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 55
18: aload 16
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 8
end local 16 19: goto 55
StackMap locals:
StackMap stack:
20: aload 15
ldc "Inode "
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 31
21: aload 7
aload 15
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 16
start local 16 22: aload 16
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 28
aload 8
ldc "1"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 28
23: iconst_1
istore 9
24: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "fs_stat, partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " found tree optimization:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
27: goto 55
28: StackMap locals: java.util.regex.Matcher
StackMap stack:
iconst_1
istore 12
29: aload 15
astore 13
30: goto 57
end local 16 31: StackMap locals:
StackMap stack:
aload 15
ldc "[QUOTA WARNING]"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 39
aload 8
ldc "5"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 39
32: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "fs_stat, partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " found quota warning:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
33: aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
34: invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
35: iconst_1
istore 10
36: iload 9
ifne 55
37: aload 15
astore 13
38: goto 57
39: StackMap locals:
StackMap stack:
aload 15
ldc "Update quota info"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 40
aload 8
ldc "5"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 55
40: StackMap locals:
StackMap stack:
aload 15
ldc "Timestamp(s) on inode"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 50
41: aload 15
ldc "beyond 2310-04-04 are likely pre-1970"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 50
42: aload 8
ldc "1"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 50
43: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "fs_stat, partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " found timestamp adjustment:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
44: aload 15
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
45: invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
46: aload 2
iload 14
iconst_1
iadd
aaload
ldc "Fix? yes"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 48
47: iinc 14 1
48: StackMap locals:
StackMap stack:
iconst_1
istore 11
49: goto 55
50: StackMap locals:
StackMap stack:
aload 15
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 15
51: aload 15
invokevirtual java.lang.String.isEmpty:()Z
ifne 55
aload 8
invokevirtual java.lang.String.isEmpty:()Z
ifne 55
52: iconst_1
istore 12
53: aload 15
astore 13
54: goto 57
end local 15 55: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
56: iload 14
iload 4
if_icmplt 12
end local 14 57: StackMap locals:
StackMap stack:
iload 12
ifeq 61
58: aload 13
ifnull 70
59: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "fs_stat, partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " fix:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 13
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
60: goto 70
StackMap locals:
StackMap stack:
61: iload 10
ifeq 66
iload 9
ifne 66
62: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "fs_stat, got quota fix without tree optimization, partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
63: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
64: invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
65: goto 70
StackMap locals:
StackMap stack:
66: iload 9
ifeq 67
iload 10
ifne 68
StackMap locals:
StackMap stack:
67: iload 11
ifeq 70
68: StackMap locals:
StackMap stack:
ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "fs_stat, partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " fix ignored"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
69: iload 5
sipush -1025
iand
istore 5
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 70: StackMap locals: java.lang.String int java.lang.String[] int int int
StackMap stack:
iload 5
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 71 0 partition Ljava/lang/String;
0 71 1 statOrg I
0 71 2 lines [Ljava/lang/String;
0 71 3 startLineNumber I
0 71 4 endLineNumber I
1 71 5 stat I
3 70 6 passPattern Ljava/util/regex/Pattern;
4 70 7 treeOptPattern Ljava/util/regex/Pattern;
5 70 8 currentPass Ljava/lang/String;
6 70 9 foundTreeOptimization Z
7 70 10 foundQuotaFix Z
8 70 11 foundTimestampAdjustment Z
9 70 12 foundOtherFix Z
10 70 13 otherFixLine Ljava/lang/String;
11 57 14 i I
13 55 15 line Ljava/lang/String;
17 19 16 matcher Ljava/util/regex/Matcher;
22 31 16 matcher Ljava/util/regex/Matcher;
RuntimeInvisibleAnnotations:
com.android.internal.annotations.VisibleForTesting()
RuntimeInvisibleTypeAnnotations:
METHOD_RETURN
com.android.internal.annotations.VisibleForTesting()
MethodParameters:
Name Flags
partition
statOrg
lines
startLineNumber
endLineNumber
private static void handleFsckFsStat(java.util.regex.Matcher, java.lang.String[], int, int);
descriptor: (Ljava/util/regex/Matcher;[Ljava/lang/String;II)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 4
start local 4 1: aload 0
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokestatic java.lang.Integer.decode:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
istore 5
start local 5 2: goto 6
end local 5 StackMap locals: java.util.regex.Matcher java.lang.String[] int int java.lang.String
StackMap stack: java.lang.NumberFormatException
3: pop
4: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "cannot parse fs_stat: partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " stat:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;)I
pop
5: return
start local 5 6: StackMap locals: int
StackMap stack:
aload 4
iload 5
aload 1
iload 2
iload 3
invokestatic com.android.server.BootReceiver.fixFsckFsStat:(Ljava/lang/String;I[Ljava/lang/String;II)I
istore 5
7: aconst_null
new java.lang.StringBuilder
dup
ldc "boot_fs_stat_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iload 5
invokestatic com.android.internal.logging.MetricsLogger.histogram:(Landroid/content/Context;Ljava/lang/String;I)V
8: ldc "BootReceiver"
new java.lang.StringBuilder
dup
ldc "fs_stat, partition:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " stat:0x"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 5
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
pop
9: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 match Ljava/util/regex/Matcher;
0 10 1 lines [Ljava/lang/String;
0 10 2 startLineNumber I
0 10 3 endLineNumber I
1 10 4 partition Ljava/lang/String;
2 3 5 stat I
6 10 5 stat I
Exception table:
from to target type
1 2 3 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
match
lines
startLineNumber
endLineNumber
private static java.util.HashMap<java.lang.String, java.lang.Long> readTimestamps();
descriptor: ()Ljava/util/HashMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tXmlPullParser cannot be resolved to a type\n\tThe method newPullParser() from the type Xml refers to the missing type XmlPullParser\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParserException cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
LocalVariableTable:
Start End Slot Name Signature
Signature: ()Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;
private void writeTimestamps(java.util.HashMap<java.lang.String, java.lang.Long>);
descriptor: (Ljava/util/HashMap;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tXmlSerializer cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/android/server/BootReceiver;
Signature: (Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Long;>;)V
MethodParameters:
Name Flags
timestamps
}
SourceFile: "BootReceiver.java"
NestMembers:
com.android.server.BootReceiver$1 com.android.server.BootReceiver$2
InnerClasses:
com.android.server.BootReceiver$1
com.android.server.BootReceiver$2