[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CABPqkBSeYKjZ9eKzrALFcv8gHJ2RWQaBntkpe2Fk5=mznDCs+A@mail.gmail.com>
Date: Wed, 23 Aug 2017 10:00:37 -0700
From: Stephane Eranian <eranian@...gle.com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: "Liang, Kan" <kan.liang@...el.com>,
"mingo@...hat.com" <mingo@...hat.com>,
LKML <linux-kernel@...r.kernel.org>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Jiri Olsa <jolsa@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
"ak@...ux.intel.com" <ak@...ux.intel.com>,
Michael Ellerman <mpe@...erman.id.au>,
Madhavan Srinivasan <maddy@...ux.vnet.ibm.com>
Subject: Re: [PATCH V6] perf: Add PERF_SAMPLE_PHYS_ADDR
On Wed, Aug 23, 2017 at 7:39 AM, Peter Zijlstra <peterz@...radead.org> wrote:
> On Wed, Aug 23, 2017 at 04:33:08PM +0200, Peter Zijlstra wrote:
>> > @@ -6145,6 +6183,9 @@ void perf_prepare_sample(struct perf_event_header *header,
>> >
>> > header->size += size;
>> > }
>> > +
>> > + if (sample_type & PERF_SAMPLE_PHYS_ADDR)
>> > + data->phys_addr = perf_virt_to_phys(data->addr);
>>
>> Only problem with this now is that it requires SAMPLE_ADDR to also be
>> set in order to obtain data->addr.
>>
>> Either fix all to set data->attr for (SAMPLE_ADDR || SAMPLE_PHYS_ADDR)
>> or mandate SAMPLE_ADDR when SAMPLE_PHYS_ADDR.
>
> I think the former suggestion is better, as it allows for smaller
> samples.
Agreed. I may only care about physical addresses, so SAMPLE_PHYS_ADDR
should suffice from the user.
The kernel must save the virtual address in data->addr, and then convert it.
Powered by blists - more mailing lists