mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "stephane eranian" <eranian@googlemail.com>
To: "Stephen Rothwell" <sfr@canb.auug.org.au>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [patch 00/19] perfmon2 minimal v3: introduction
Date: Mon, 28 Jul 2008 23:20:50 -0700	[thread overview]
Message-ID: <7c86c4470807282320o2d072c7dp7a327f133d5969c5@mail.gmail.com> (raw)
In-Reply-To: <20080729014730.76b879a4.sfr@canb.auug.org.au>

Stephen,


On Mon, Jul 28, 2008 at 8:47 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> On Mon, 30 Jun 2008 06:13:26 -0700 (PDT) eranian@googlemail.com wrote:
>>
>> The following patches implement a minimal perfmon2 subsystem which provides
>> access to the hardware performance counters of modern processors.
>
> First up, I cannot speak to the actual function of the patches, but just
> to the mechanics of getting them into the kernel.  One good thing is that
> with CONFIG_PERFMON turned off, it looks like the impact is very close to
> zero. Two obvious things that would help these being accepted are:
>
Yes, when CONFIG_PERFMON is off, there should be no penalty at all.
The hooks are removed via empty inline functions. The extra field in
task_struct is removed. In x86-specific code, the low-level interrupt
code is removed. The TIF flags are unused, thus no impact on context
switch because the thread_info cacheline is checked regardless of perfmon2.


>        ordering - in the current incarnation, the patches produce places
> where the kernel will not build.  We like things to be ordered so that
> git bisection does not fail if at all possible - that means that an
> allmod/yesconfig should build after the application of each patch.
> Currently this is not so.  It could be mode to do so trivially by
> delaying the "global" Kconfig/Makefile updates until later in the
> sequence.  And you really should introduce the system calls *before*
> wiring them up.

I will restructure the patch series so it can be built at any one level of
of th patch stack.

>
>        quite a few of the macros (especially for the dummy (non
> CONFIG_PERFMON) versions of functions) should be "static inline"
> functions unless they absolutely must be macros.  Andrew Morton said it
> best - "write in C not C preprocessor".
>
I will fix that as well.

> I can see that this infrastructure could be very useful and I appreciate
> that it has been cut down for this initial merge.  These patches (even as
> they are) compare favourably to some other new infrastructure that has
> been introduced.

I think I can break it down a bit more especially for x86_64.

As discussed with people on LKML and with Andi Kleen last week at OLS, I will
see what can be done with the syscalls to make them a bit more extensible.

Thanks.

  reply	other threads:[~2008-07-29  6:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-30 13:13 eranian
2008-07-28 15:47 ` Stephen Rothwell
2008-07-29  6:20   ` stephane eranian [this message]
2008-07-30 23:59     ` stephane eranian
2008-07-31  0:21       ` Stephen Rothwell
2008-07-31  0:26         ` stephane eranian
2008-07-31  0:43           ` Stephen Rothwell

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=7c86c4470807282320o2d072c7dp7a327f133d5969c5@mail.gmail.com \
    --to=eranian@googlemail.com \
    --cc=eranian@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sfr@canb.auug.org.au \
    /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

all inboxes | Powered by JetHome®