Re: [patch 05/19] perfmon2 minimal v2: X86 generic code

From: stephane eranian
Date: Fri Jun 27 2008 - 04:43:21 EST


Stephen,

Ok, so I cloned your linux-next tree and ported by perfmon2 minimal patch
series to it. As you said, there was a handful of files which caused problems,
mostly because of x86 merge. But the net effect is that the series is now a bit
smaller. I tried some simple perfmon tests and they worked fine. I did not go
all the way to the patch which needed IPI (i.e. system-wide support).

However I had problems with this tree and my Broadcom BMC5754 network
card. It was not recognized by the tg3 driver so hard to use this kernel.


On Mon, Jun 23, 2008 at 6:11 PM, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
> Hi Stephane,
>
> On Tue, 17 Jun 2008 15:02:22 -0700 (PDT) eranian@xxxxxxxxxxxxxx wrote:
>>
>> This patch adds the X86 generic perfmon2 code. It is in charge of
>> implementing certain key functionalities required by the generic
>> code such as read/write of the PMU registers, low-level interrupt
>> handling.
>
> After applying patches 1-5, building an x86_64 allmodconfig produces
> these errors:
>
> In file included from include/linux/perfmon_kern.h:167,
> from arch/x86/perfmon/perfmon.c:25:
> include/linux/perfmon_pmu.h:92: warning: 'struct pfarg_pmc' declared inside parameter list
> include/linux/perfmon_pmu.h:92: warning: its scope is only this definition or declaration, which is probably not what you want
> include/linux/perfmon_pmu.h:96: warning: 'struct pfarg_pmd' declared inside parameter list
>
> Those structures aren't defined until patch 11.
>
> In file included from arch/x86/perfmon/perfmon.c:25:
> include/linux/perfmon_kern.h: In function 'pfm_copy_thread':
> include/linux/perfmon_kern.h:199: error: 'TIF_PERFMON_CTXSW' undeclared (first use in this function)
> arch/x86/perfmon/perfmon.c: In function 'smp_pmu_interrupt':
> arch/x86/perfmon/perfmon.c:338: error: 'LOCAL_PERFMON_VECTOR' undeclared (first use in this function)
> arch/x86/perfmon/perfmon.c: In function 'pfm_arch_resend_irq':
> arch/x86/perfmon/perfmon.c:451: error: 'LOCAL_PERFMON_VECTOR' undeclared (first use in this function)
> arch/x86/perfmon/perfmon.c: In function 'pfm_arch_pmu_acquire_percpu':
> arch/x86/perfmon/perfmon.c:475: error: 'LOCAL_PERFMON_VECTOR' undeclared (first use in this function)
>
> These are not defined until patch 7.
>
> So I think some rearrangement is still required.
>
> Also, some of the x86 files that you are modifying have had their 32 and
> 64 bit versions combined in linux-next (which is the stuff of the next
> merge window) so just a heads up that there will be more merge work then.
> Lastly, some of this will clash with the generic IPIs work.
>
> I don't want to put you off, you have done great work here, thanks.
>
> --
> Cheers,
> Stephen Rothwell sfr@xxxxxxxxxxxxxxxx
> http://www.canb.auug.org.au/~sfr/
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/