Re: [RFC] [PATCH 2.6.37-rc5-tip 5/20] 5: Uprobes:register/unregister probes.

From: Srikar Dronamraju
Date: Thu Jan 27 2011 - 05:32:16 EST


* Peter Zijlstra <peterz@xxxxxxxxxxxxx> [2011-01-27 11:23:37]:

> On Thu, 2011-01-27 at 15:31 +0530, Srikar Dronamraju wrote:
> > > > > - validate that the vma is indeed a map of the right inode
> > > >
> > > > We can add a check in write_opcode( we need to pass the inode to
> > > > write_opcode).
> > >
> > > sure..
> > >
> > > > > - validate that the offset of the probe corresponds with the stored
> > > > > address
> > > >
> > > > I am not clear on this. We would have derived the address from the
> > > > offset. So is that we check for
> > > > (vaddr == vma->vm_start + uprobe->offset)
> > >
> > > Sure, but the vma might have changed since you computed the offset -)
> >
> > If the vma has changed then it would fail the 2nd validation i.e vma
> > corresponds to the uprobe inode right. If the vma was unmapped and
> > mapped back at the same place, then I guess we are okay to probe.
>
> It can be unmapped and mapped back slightly different. A map of the same
> file doesn't need to mean its in the exact same location or has the
> exact same pgoffset.
>
>

If its not at the exact same location, then our third validation of
checking that (vaddr == vma->vm_start + uprobe->offset) should fail
right?

Also should it be (vaddr == uprobe->offset + vma->vm_start -
vma->pgoff << PAGE_SHIFT) ?

--
Thanks and Regards
Srikar
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/