[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110713100404.GG2872@htj.dyndns.org>
Date: Wed, 13 Jul 2011 12:04:04 +0200
From: Tejun Heo <tj@...nel.org>
To: Oleg Nesterov <oleg@...hat.com>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
vda.linux@...glemail.com, jan.kratochvil@...hat.com,
pedro@...esourcery.com, indan@....nu, bdonlan@...il.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/1] ptrace: fix ptrace_signal() && STOP_DEQUEUED
interaction
Hello, Oleg. Sorry about the long delay. Was lost somewhere else. :)
On Thu, Jul 07, 2011 at 09:03:24PM +0200, Oleg Nesterov wrote:
> Without the patch it hangs. After the patch SIGSTOP "injected" by the
> tracer is not ignored and stops the tracee.
I always felt the ability to 'inject' different signal there is rather
useless and prone to induce weird issues. It would be better if
ptrace_signal() is part of signal delivery action after all the checks
so that the ptracer says whether to proceed with the action or not but
no more. Well...
> So lets add STOP_DEQUEUED _before_ we report the signal. It has no effect
> unless sig_kernel_stop() == T after the tracer resumes us, and in the
> latter case the pending STOP_DEQUEUED means no SIGCONT in between, we
> should stop.
Anyways, yes, this seems to be a nice improvement but it looks very
weird (and difficult to comprehend) to be setting STOP_DEQUEUED
unconditionally in ptrace_signal(). Wouldn't it be better to flip the
flag so that we have CONT_RECEIVED before doing this?
Thanks.
--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists