static void mdm_crash_dump_dbg_info(void) { dump_mdm_related_gpio(); printk(KERN_INFO "=== Show qcks stack ===\n"); show_thread_group_state_filter("qcks", 0); printk(KERN_INFO "\n"); printk(KERN_INFO "=== Show efsks stack ===\n"); show_thread_group_state_filter("efsks", 0); printk(KERN_INFO "\n"); printk(KERN_INFO "=== Show ks stack ===\n"); show_thread_group_state_filter("ks", 0); printk(KERN_INFO "\n"); pr_info("### Show Blocked State in ###\n"); show_state_filter(TASK_UNINTERRUPTIBLE); if (get_restart_level() == RESET_SOC) msm_rtb_disable(); if (get_restart_level() == RESET_SOC) set_mdm2ap_errfatal_restart_flag(1); }
static void vfs_write_timeout(unsigned long data) { struct task_struct* tsk = (struct task_struct*) data; pr_warn("%s: vfs_write timed out after %d seconds! dump call stack:\n", __func__, WRITE_TIMEOUT_VALUE); show_stack(tsk, NULL); pr_warn("### Show Blocked State ###\n"); show_state_filter(TASK_UNINTERRUPTIBLE); pr_warn("### Show System Server State ###\n"); show_thread_group_state_filter("system_server", 0); pr_info("### Show bugreport State ###\n"); show_thread_group_state_filter("bugreport", 0); pr_info("### Show adbd State ###\n"); show_thread_group_state_filter("adbd", 0); }
static void sysrq_handle_showstate_blocked(int key) { show_state_filter(TASK_UNINTERRUPTIBLE); pr_info("### Show All Tasks in System Server ###\n"); show_thread_group_state_filter("system_server", 0); }