[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120415234401.GA32662@redhat.com>
Date: Mon, 16 Apr 2012 01:44:01 +0200
From: Oleg Nesterov <oleg@...hat.com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Ingo Molnar <mingo@...e.hu>,
Srikar Dronamraju <srikar@...ux.vnet.ibm.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Ananth N Mavinakayanahalli <ananth@...ibm.com>,
Jim Keniston <jkenisto@...ux.vnet.ibm.com>,
LKML <linux-kernel@...r.kernel.org>,
Linux-mm <linux-mm@...ck.org>, Andi Kleen <andi@...stfloor.org>,
Christoph Hellwig <hch@...radead.org>,
Steven Rostedt <rostedt@...dmis.org>,
Arnaldo Carvalho de Melo <acme@...radead.org>,
Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>,
Thomas Gleixner <tglx@...utronix.de>,
Anton Arapov <anton@...hat.com>
Subject: Re: [RFC 0/6] uprobes: kill uprobes_srcu/uprobe_srcu_id
I'll write another email tomorrow, just one note...
On 04/15, Peter Zijlstra wrote:
>
> OK, still not seeing how your proposal could work.. consider the below
> patch comment, I'm not seeing how is_swbp_at_addr_fast() deals with an
> in-progress INT3 while we remove the probe.
>
> By ensuring the non-race with reg/unreg it will either find the uprobe
> (no problem)
Yes,
> or not find it and not see a breakpoint instruction either,
> even though the pending breakpoint was generated by a uprobe (which is
> now gone),
Yes,
> causing a false positive SIGTRAP.
No. Please note that if is_swbp_at_addr_fast() sets is_swbp == 0 we
restart this insn.
(note that we also restart if get_user_pages() fails, this is hopefully
is more correct too but minor).
> Or am I still not getting it?
My experience shows this is very unlikely. I am starting to think
I missed something, will re-check.
And. I have another reason for down_write() in register/unregister.
I am still not sure this is possible (I had no time to try to
implement), but it seems to me we can kill the uprobe counter in
mm_struct.
Oleg.
--
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