linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Milind Chabbi <chabbi.milind@gmail.com>
To: Andi Kleen <ak@linux.intel.com>
Cc: Milind Chabbi <chabbi.milind@gmail.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Jiri Olsa <jolsa@redhat.com>, Ingo Molnar <mingo@redhat.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Namhyung Kim <namhyung@kernel.org>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Hari Bathini <hbathini@linux.vnet.ibm.com>,
	Jin Yao <yao.jin@linux.intel.com>,
	Kan Liang <kan.liang@intel.com>,
	Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] perf/core: fast breakpoint modification via _IOC_MODIFY_BREAKPOINT.
Date: Tue, 7 Nov 2017 09:42:25 -0800	[thread overview]
Message-ID: <CAMmz+Yk1EMojbyjEsS9rKEo+kN0YvjO3QHfZ_ih34o2NjT0uYA@mail.gmail.com> (raw)
In-Reply-To: <20171107172429.GG5320@tassilo.jf.intel.com>

I am fine with Andi's suggestion. In summary,

1. I will introduce an ioctl flag  _IOC_MODIFY_ATTRIBUTES.
 (Yes, plural ATTRIBUTES not ATTRIBUTE)
2. Currently, implement only updates to breakpoints and all others
will fail with -EOPNOTSUPP.
3. The implementation of breakpoint update shall check the following
before modifying:
     (event->attr.type == PERF_TYPE_BREAKPOINT) && (new_attr.type ==
PERF_TYPE_BREAKPOINT)
     This ensures that both the passed in fd's event and the new_attr
are PERF_TYPE_BREAKPOINT.

Can we have a consensus on this?

Now the question is what other attribute values to check in
the implementation of the breakpoint update.

Do you expect all fields other than the ones that we allow modification remain
unchanged from the original creation time? and if anything changes
should we fail with -EOPNOTSUPP? I think that is too strict.
Expecting them to be zeros can be seen as a change from the original
values, hence zero is not the right expectation.
I am open to suggestions here and your help in listing a few attribute
fields that need
validation will be valuable.

-Milind








On Tue, Nov 7, 2017 at 9:24 AM, Andi Kleen <ak@linux.intel.com> wrote:
> On Tue, Nov 07, 2017 at 07:43:35AM -0800, Milind Chabbi wrote:
>> Peter,
>>
>> Generic update perf_event_attr interface is noble but impractical.
>> It will cause a validation nightmare.
>> Many of the behaviors or choices will become hard to reason.
>
> I don't think you would necessarily need to support modifying
> all of this. Just define a general interface that could be used
> to modify these things, but right now it would be only
> implemented for the special case of breakpoints.
>
> Your ioctl is very near it anyways, just need to change
> the name and do more sanity checking on the input values.
>
> -Andi

  reply	other threads:[~2017-11-07 17:42 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-06 22:09 [PATCH] perf/core: fast breakpoint modification via _IOC_MODIFY_BREAKPOINT Milind Chabbi
2017-11-06 23:16 ` Andi Kleen
2017-11-07  8:15   ` Peter Zijlstra
2017-11-07 17:09     ` Andi Kleen
2017-11-07  8:14 ` Peter Zijlstra
2017-11-07 15:43   ` Milind Chabbi
2017-11-07 17:24     ` Andi Kleen
2017-11-07 17:42       ` Milind Chabbi [this message]
2017-11-07 19:01         ` Peter Zijlstra
2017-11-07 19:31           ` Milind Chabbi
2017-11-08 13:35 ` kbuild test robot
2017-11-08 13:51 ` kbuild test robot
     [not found] <CAMmz+YnaoN3-7DN5WysQvhWNyGhM7_WDz5AQAnvP6FO_GMnMgw@mail.gmail.com>
2017-11-06 15:03 ` Arnaldo Carvalho de Melo
     [not found] <CAMmz+Y=Py0dw63tuww+Oa4rWi_Hghhs3DHmNX=Tf1Yt_JH4O+Q@mail.gmail.com>
2017-11-06  9:23 ` Jiri Olsa
     [not found]   ` <CAMmz+YkB955Na6wOMmgqZX_TxqsBh86FiLi8EXmOrg1vwm-fGA@mail.gmail.com>
2017-11-08 14:15     ` Jiri Olsa
2017-11-08 15:02       ` Milind Chabbi
2017-11-08 15:12         ` Jiri Olsa
2017-11-08 15:51           ` Milind Chabbi
2017-11-08 15:57             ` Jiri Olsa
2017-11-08 16:59               ` Milind Chabbi
2017-11-09  7:52                 ` Jiri Olsa
2017-11-09 13:12                   ` Jiri Olsa
2017-11-09 18:59                     ` Milind Chabbi
2017-11-12 19:09                       ` Milind Chabbi
2017-11-13  7:46                         ` Jiri Olsa
2017-11-13  8:02                           ` Milind Chabbi
2017-11-26 19:31                             ` Jiri Olsa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAMmz+Yk1EMojbyjEsS9rKEo+kN0YvjO3QHfZ_ih34o2NjT0uYA@mail.gmail.com \
    --to=chabbi.milind@gmail.com \
    --cc=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=hbathini@linux.vnet.ibm.com \
    --cc=jolsa@redhat.com \
    --cc=kan.liang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=mpe@ellerman.id.au \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    --cc=sukadev@linux.vnet.ibm.com \
    --cc=yao.jin@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).