lkml.org 
[lkml]   [2011]   [Oct]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v5 3.1.0-rc4-tip 9/26] Uprobes: Background page replacement.
* Oleg Nesterov <oleg@redhat.com> [2011-10-05 18:19:14]:

> On 09/20, Srikar Dronamraju wrote:
> >
> > +int __weak read_opcode(struct task_struct *tsk, unsigned long vaddr,
> > + uprobe_opcode_t *opcode)
> > +{
> > + struct vm_area_struct *vma;
> > + struct page *page;
> > + void *vaddr_new;
> > + int ret;
> > +
> > + ret = get_user_pages(tsk, tsk->mm, vaddr, 1, 0, 0, &page, &vma);
> > + if (ret <= 0)
> > + return ret;
> > + ret = -EINVAL;
> > +
> > + /*
> > + * We are interested in text pages only. Our pages of interest
> > + * should be mapped for read and execute only. We desist from
> > + * adding probes in write mapped pages since the breakpoints
> > + * might end up in the file copy.
> > + */
> > + if (!valid_vma(vma))
> > + goto put_out;
>
> Another case when valid_vma() looks suspicious. We are going to restore
> the original instruction. We shouldn't fail (at least we shouldn't "leak"
> ->mm_uprobes_count) if ->vm_flags was changed between register_uprobe()
> and unregister_uprobe().
>

Agree.

--
Thanks and Regards
Srikar


\
 
 \ /
  Last update: 2011-10-06 09:13    [W:0.093 / U:29.480 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site