Re: [PATCH v2 2.6.38-rc8-tip 7/20] 7: uprobes: store/restore original instruction.

Stephen Wilson
2011-03-15T16:15:54Z

On Tue, Mar 15, 2011 at 09:47:59AM -0400, Steven Rostedt wrote:
> > rcu_read_lock()
> > if (mm->owner) {
> > get_task_struct(mm->owner)
> > tsk = mm->owner;
> > }
> > rcu_read_unlock()
> > if (!tsk)
> > return ret;
> >
> > Agree?
>
> Or:
>
> rcu_read_lock();
> tsk = mm->owner;
> if (tsk)
> get_task_struct(tsk);
> rcu_read_unlock();
> if (!tsk)
> return ret;
>
> Probably looks cleaner.

Yes, plus we should do "tsk = rcu_dereference(mm->owner);" and wrap the
whole thing in a static uprobes_get_mm_owner() or similar.

--
steve