From 9c6c316e3d7ba022bb16c80ea81e5143bf1010fb Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Wed, 12 Oct 2022 09:49:01 +0200 Subject: [PATCH] Revert "ANDROID: hung_task: Add vendor hook for hung task detect" This reverts commit fd84c028725765cad52a6027b8e3d9f4ae4d06e7 as it conflicts with upstream scheduler changes in 6.1-rc1 in a very large way. If it is still needed here, it must be reworked and added back again. Bug: 188684133 Cc: Huang Yiwei Signed-off-by: Greg Kroah-Hartman Change-Id: Iad842fe0f22204570343b94c870589430e46b7cf --- drivers/android/vendor_hooks.c | 3 --- include/trace/hooks/hung_task.h | 25 ------------------------- kernel/hung_task.c | 12 +++--------- 3 files changed, 3 insertions(+), 37 deletions(-) delete mode 100644 include/trace/hooks/hung_task.h diff --git a/drivers/android/vendor_hooks.c b/drivers/android/vendor_hooks.c index c292892b07bd..9e8b7e7b31db 100644 --- a/drivers/android/vendor_hooks.c +++ b/drivers/android/vendor_hooks.c @@ -35,7 +35,6 @@ #include #include #include -#include /* * Export tracepoints that act as a bare tracehook (ie: have no trace event @@ -105,5 +104,3 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_file_open); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_bpf_syscall); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rproc_recovery); EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rproc_recovery_set); -EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_uninterruptible_tasks); -EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_check_uninterruptible_tasks_dn); diff --git a/include/trace/hooks/hung_task.h b/include/trace/hooks/hung_task.h deleted file mode 100644 index 115727d2916c..000000000000 --- a/include/trace/hooks/hung_task.h +++ /dev/null @@ -1,25 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -#undef TRACE_SYSTEM -#define TRACE_SYSTEM hung_task - -#define TRACE_INCLUDE_PATH trace/hooks - -#if !defined(_TRACE_HOOK_HUNG_TASK_H) || defined(TRACE_HEADER_MULTI_READ) -#define _TRACE_HOOK_HUNG_TASK_H - -#include - -struct task_struct; - -DECLARE_HOOK(android_vh_check_uninterruptible_tasks, - TP_PROTO(struct task_struct *t, unsigned long timeout, - bool *need_check), - TP_ARGS(t, timeout, need_check)); - -DECLARE_HOOK(android_vh_check_uninterruptible_tasks_dn, - TP_PROTO(void *unused), - TP_ARGS(unused)); - -#endif /* _TRACE_HOOK_HUNG_TASK_H */ -/* This part must be outside protection */ -#include diff --git a/kernel/hung_task.c b/kernel/hung_task.c index df6f295f4bfe..bb2354f73ded 100644 --- a/kernel/hung_task.c +++ b/kernel/hung_task.c @@ -24,8 +24,6 @@ #include #include -#undef CREATE_TRACE_POINTS -#include /* * The number of tasks checked: @@ -182,7 +180,6 @@ static void check_hung_uninterruptible_tasks(unsigned long timeout) int max_count = sysctl_hung_task_check_count; unsigned long last_break = jiffies; struct task_struct *g, *t; - bool need_check = true; /* * If the system crashed already then all bets are off, @@ -201,13 +198,10 @@ static void check_hung_uninterruptible_tasks(unsigned long timeout) goto unlock; last_break = jiffies; } - trace_android_vh_check_uninterruptible_tasks(t, timeout, &need_check); - if (need_check) - /* use "==" to skip the TASK_KILLABLE tasks waiting on NFS */ - if (READ_ONCE(t->__state) == TASK_UNINTERRUPTIBLE) - check_hung_task(t, timeout); + /* use "==" to skip the TASK_KILLABLE tasks waiting on NFS */ + if (READ_ONCE(t->__state) == TASK_UNINTERRUPTIBLE) + check_hung_task(t, timeout); } - trace_android_vh_check_uninterruptible_tasks_dn(NULL); unlock: rcu_read_unlock(); if (hung_task_show_lock)