Re: [RFC] [Patch 1/1] [Self Ptrace] System call notification with self_ptrace

From: Oleg Nesterov
Date: Mon Aug 25 2008 - 12:49:33 EST


On 08/25, Pierre Morel wrote:
>
> @@ -550,6 +550,23 @@ asmlinkage long sys_ptrace(long request,
> goto out;
> }
>
> + if (request == PTRACE_SELF_ON) {
> + task_lock(current);
> + set_thread_flag(TIF_SYSCALL_TRACE);
> + current->ptrace |= PT_SELF;

I didn't read the whole patch, but this sets PT_SELF without PT_PTRACED
(and without ptrace_attach).

We have some "->ptrace != 0" checks which can misunderstand this. Just
for example, suppose that the task does sys_ptrace(PTRACE_SELF_ON) and
then its parent dies. I guess in that case forget_original_parent()
will hit BUG_ON(p->ptrace), no?

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/