Not sure this makes real sense, but perhaps it would be tidier to check QUIESCE in utrace_resume.
I wonder if we still have reasons to set ->report + TIF_NOTIFY_RESUME in utrace_add_engine(). Looks like this is not needed now, but I am not sure. Signed-off-by: Oleg Nesterov <o...@redhat.com> --- kernel/utrace.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) --- __UTRACE/kernel/utrace.c~3_RESUME_CK_QUIESCE 2009-09-01 20:07:45.000000000 +0200 +++ __UTRACE/kernel/utrace.c 2009-09-04 20:48:18.000000000 +0200 @@ -1831,11 +1831,13 @@ void utrace_resume(struct task_struct *t return; } + start_report(utrace); + + if (!(task->utrace_flags & UTRACE_EVENT(QUIESCE))) + return; /* * Do a simple reporting pass, with no callback after report_quiesce. */ - start_report(utrace); - list_for_each_entry(engine, &utrace->attached, entry) start_callback(utrace, &report, engine, task, 0);