Subject: [PATCH v13 01/20] ARM64: Move PMU register related defines to asm/perf_event.h

From: [email-masked] (Marc Zyngier)
Date: Mon, 29 Feb 2016 13:07:23 +0000

Shannon,

On 25/02/16 02:02, Shannon Zhao wrote:
> 
> 
> On 2016/2/25 1:52, Will Deacon wrote:
>> On Wed, Feb 24, 2016 at 01:08:21PM +0800, Shannon Zhao wrote:
>>> From: Shannon Zhao <[email-masked]>
>>>
>>> To use the ARMv8 PMU related register defines from the KVM code, we move
>>> the relevant definitions to asm/perf_event.h header file and rename them
>>> with prefix ARMV8_PMU_.
>>>
>>> Signed-off-by: Anup Patel <[email-masked]>
>>> Signed-off-by: Shannon Zhao <[email-masked]>
>>> Acked-by: Marc Zyngier <[email-masked]>
>>> Reviewed-by: Andrew Jones <[email-masked]>
>>> ---
>>>  arch/arm64/include/asm/perf_event.h | 35 +++++++++++++++++++
>>>  arch/arm64/kernel/perf_event.c      | 68 ++++++++++---------------------------
>>>  2 files changed, 52 insertions(+), 51 deletions(-)
>>
>> Looks fine to me, but we're going to get some truly horrible conflicts
>> in -next.
>>
>> I'm open to suggestions on the best way to handle this, but one way
>> would be:
>>
>>   1. Duplicate all the #defines privately in KVM (queue via kvm tree)
> This way seems not proper I think.
> 
>>   2. Rebase this patch onto my perf/updates branch [1] (queue via me)
> While to this series, it really relies on the perf_event.h to compile
> and test, so maybe for KVM-ARM and KVM maintainers it's not proper.
> 
>>   3. Patch at -rc1 dropping the #defines from (1) and moving to the new
>>      perf_event.h stuff
>>
> I vote for this way. Since the patch in [1] is small and nothing else
> relies on them, I think it would be simple to rebase them onto this series.
> 
>> Thoughts?
>>
> Anyway, there are only 3 lines which have conflicts. I'm not sure
> whether we could handle this when we merge them.

I think you're missing the point:

- We want both the arm64 perf and KVM trees to be easy to merge
- The conflicts are not that simple to resolve
- We want these conflicts to be solved before it hits Linus' tree

With that in mind, here's what I'm suggesting we merge as a first patch:

https://git.kernel.org/cgit/linux/kernel/git/kvmarm/kvmarm.git/commit/?h=queue&id=2029b4b02691ec6ebba3d281068e783353d7e108

Once this and the perf/updates branch are merged, we can add one last
patch reverting this hack and actually doing the renaming work (Will has
posted a resolution for most of the new things).

Thoughts?

	M.
-- 
Jazz is not dead. It just smells funny...