Messages in this thread | | | Date | Mon, 2 Mar 2015 09:35:30 +0100 | From | Peter Zijlstra <> | Subject | Re: [RFC][PATCH 1/9] klp: Fix obvious RCU fail |
| |
On Sun, Mar 01, 2015 at 09:09:24PM +0100, Jiri Kosina wrote: > On Sat, 28 Feb 2015, Peter Zijlstra wrote: > > > While one must hold RCU-sched (aka. preempt_disable) for find_symbol() > > one must equally hold it over the use of the object returned. > > > > The moment you release the RCU-sched read lock, the object can be dead > > and gone. > > > > Cc: Seth Jennings <sjenning@redhat.com> > > Cc: Josh Poimboeuf <jpoimboe@redhat.com> > > Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> > > Cc: Miroslav Benes <mbenes@suse.cz> > > Cc: Petr Mladek <pmladek@suse.cz> > > Cc: Jiri Kosina <jkosina@suse.cz> > > Cc: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> > > Cc: Rusty Russell <rusty@rustcorp.com.au> > > Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> > > Acked-by: Jiri Kosina <jkosina@suse.cz> > > I guess you'll be taking this together with the series, so I am not > applying it.
Feel free to take it; this series might take a wee while longer to mature.
That said; I do have a follow up question on that code. So now you've successfully obtained an address in module space; but the moment you release that RCU-sched lock, the module can be gone.
How does the whole live patching stuff deal with module removal during patching?
| |