diff --git a/[refs] b/[refs] index a2d0686b6154..510b8039d5e7 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 15cab952139404d0e593cb1aaab0a3547ac0f95b +refs/heads/master: b1845ff53f1a9eadba005ae53dfe60ab00dfe83b diff --git a/trunk/include/linux/ptrace.h b/trunk/include/linux/ptrace.h index c2f1f6a5fcb8..6fdb196caa3e 100644 --- a/trunk/include/linux/ptrace.h +++ b/trunk/include/linux/ptrace.h @@ -199,9 +199,10 @@ static inline void ptrace_event(int event, unsigned long message) if (unlikely(ptrace_event_enabled(current, event))) { current->ptrace_message = message; ptrace_notify((event << 8) | SIGTRAP); - } else if (event == PTRACE_EVENT_EXEC && unlikely(current->ptrace)) { + } else if (event == PTRACE_EVENT_EXEC) { /* legacy EXEC report via SIGTRAP */ - send_sig(SIGTRAP, current, 0); + if ((current->ptrace & (PT_PTRACED|PT_SEIZED)) == PT_PTRACED) + send_sig(SIGTRAP, current, 0); } }