lkml.org 
[lkml]   [2011]   [Jul]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/3] perf: add context field to perf_event
    On Mon, Jul 04, 2011 at 03:36:57PM +0100, Frederic Weisbecker wrote:
    > On Mon, Jul 04, 2011 at 05:10:20PM +0300, Avi Kivity wrote:
    > > On 07/04/2011 04:58 PM, Frederic Weisbecker wrote:
    > > >Another thing I would like to do in the even longer term is to not use perf anymore
    > > >for ptrace breakpoints, because that involves a heavy dependency and few people are
    > > >happy with that. Instead we should just have a generic hook into the sched_switch()
    > > >and handle pure ptrace breakpoints there. The central breakpoint API would still be
    > > >there to reserve/schedule breakpoint resources between ptrace and perf.
    > > >
    > >
    > > 'struct preempt_notifier' may be the hook you're looking for.
    >
    > Yeah looks like a perfect fit as it's per task.

    I had a quick look at this and I think the preempt_notifier stuff needs
    slightly extending so that we can register a notifier for a task other than
    current [e.g. the child of current on which we are installing breakpoints].

    If the task in question is running, it looks like this will introduce a race
    condition between notifier registration and rescheduling. For the purposes
    of ptrace this shouldn't be a problem as the child will be stopped, but
    others might also want to make use of the new functionality.

    Any ideas on how this could be achieved, or am I better off just restricting
    this to children that are being traced?

    Cheers,

    Will


    \
     
     \ /
      Last update: 2011-07-11 23:11    [W:0.020 / U:62.572 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site