> On Fri, 2012-04-20 at 20:37 +0200, Oleg Nesterov wrote:> > Say, a user wants to probe /sbin/init only. What if init forks?> > We should remove breakpoints from child->mm somehow. > > How is that hard? dup_mmap() only copies the VMAs, this doesn't actually> copy the breakpoint. So the child doesn't have a breakpoint to be> removed.>

Because the pages are COWED, the breakpoint gets copied over to thechild. If we dont want the breakpoints to be not visible to the child,then we would have to remove them explicitly based on the filter (i.e ifand if we had inserted breakpoints conditionally based on filter).

Once we add the conditional breakpoint insertion (which is tricky), we haveto support conditional breakpoint removal in the dup_mmap() thro theuprobe_mmap hook (which I think is not that hard). Conditional removalof breakpoints in fork path would just be an extension of theconditional breakpoint insertion.