Shan, Haitao
2008-Jan-30 09:44 UTC
RE: [Xen-devel] [PATCH] Enable Core 2 Duo PerformanceCountersinHVM guest
Hi, Keir, May I know what''s your opinions about the patch now? Best Regards Haitao Shan I will. This isn''t for 3.2.0 though, so I may not look until after the 3.2.0 branch. -- Keri On 17/12/07 07:22, "Shan, Haitao" <haitao.shan@intel.com> wrote: Hi, Keir, ? I have baked an updated patch. In this patch, I changed some logic?to shorten the lengthy part of core2_vpmu_do_wrmsr. And also, I did a rebase, since there?is?one?new changeset recently which made changes to xenoprofile. Can you have a look? <<pmu.patch>> Best Regards Haitao Shan Shan, Haitao wrote: > Hi, Salvador, > > Do you mean the strange indentation around CTRL_WRITE? That is > because there are three hard TABs before CTRL_WRITE. I am not sure > whether I should fix the original code, so I just leave them there > untouched. > > Haitao Shan > wrote:> > From: Otavio Salvador [mailto:otavio@ossystems.com.br > <mailto:otavio@ossystems.com.br> <mailto:otavio@ossystems.com.br> ] > > Sent: 2007年12月15日 3:05 > To: Shan, Haitao > > Cc: Keir Fraser; xen-devel@lists.xensource.com; Jiang, Yunhong > > Subject: Re: [Xen-devel] Re: [PATCH] Enable Core 2 Duo > > PerformanceCounters inHVM guest > > > > "Shan, Haitao" <haitao.shan@intel.com> writes: > > > > Hello Haitao, > > > > I''ve done a look on the patch and found two places with wrong > coding > style. Take a look bellow: > > > >> diff -r 8f0cbfc478d6 xen/arch/x86/oprofile/op_model_ppro.c > >> --- a/xen/arch/x86/oprofile/op_model_ppro.c Thu Dec 13 09:31:03 > 2007 >> +0000 +++ b/xen/arch/x86/oprofile/op_model_ppro.c Fri Dec > 14 >> 07:21:43 2007 +0800 @@ -126,6 +127,11 @@ static void > >> ppro_start(struct op_msrs co CTRL_READ(low, high, msrs, 0); > >> CTRL_SET_ACTIVE(low); > >> CTRL_WRITE(low, high, msrs, 0); > >> + /* Global Control MSR is enabled by default when system power > >> on. + * However, this may not hold true when xenoprof starts > to >> run. + */ + if ( ppro_has_global_ctrl ) > >> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 1); > >> } > >> > >> > >> @@ -135,6 +141,8 @@ static void ppro_stop(struct op_msrs con > >> CTRL_READ(low, high, msrs, 0); > >> CTRL_SET_INACTIVE(low); > >> CTRL_WRITE(low, high, msrs, 0); > >> + if ( ppro_has_global_ctrl ) > >> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 0); > >> } > > > > Cheers, > > > ________________________________ > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > > > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Keir Fraser
2008-Jan-30 09:58 UTC
Re: [Xen-devel] [PATCH] Enable Core 2 Duo PerformanceCountersinHVM guest
Good enough. I''ll check it in. K. On 30/1/08 09:44, "Shan, Haitao" <haitao.shan@intel.com> wrote:> Hi, Keir, > > May I know what''s your opinions about the patch now? > > Best Regards > Haitao Shan > > I will. This isn''t for 3.2.0 though, so I may not look until after the > 3.2.0 branch. > > -- Keri > > On 17/12/07 07:22, "Shan, Haitao" <haitao.shan@intel.com> wrote: > > > > Hi, Keir, > ? > I have baked an updated patch. In this patch, I changed some logic?to > shorten the lengthy part of core2_vpmu_do_wrmsr. And also, I did a > rebase, since there?is?one?new changeset recently which made changes to > xenoprofile. > > Can you have a look? > <<pmu.patch>> > Best Regards > Haitao Shan > > Shan, Haitao wrote: >> Hi, Salvador, >> >> Do you mean the strange indentation around CTRL_WRITE? That is >> because there are three hard TABs before CTRL_WRITE. I am not sure >> whether I should fix the original code, so I just leave them there >> untouched. >> >> Haitao Shan >> > wrote: >>> From: Otavio Salvador [mailto:otavio@ossystems.com.br >> <mailto:otavio@ossystems.com.br> <mailto:otavio@ossystems.com.br> ] >>> Sent: 2007年12月15日 3:05 > To: Shan, Haitao >>> Cc: Keir Fraser; xen-devel@lists.xensource.com; Jiang, Yunhong >>> Subject: Re: [Xen-devel] Re: [PATCH] Enable Core 2 Duo >>> PerformanceCounters inHVM guest >>> >>> "Shan, Haitao" <haitao.shan@intel.com> writes: >>> >>> Hello Haitao, >>> >>> I''ve done a look on the patch and found two places with wrong >> coding > style. Take a look bellow: >>> >>>> diff -r 8f0cbfc478d6 xen/arch/x86/oprofile/op_model_ppro.c >>>> --- a/xen/arch/x86/oprofile/op_model_ppro.c Thu Dec 13 09:31:03 >> 2007 >> +0000 +++ b/xen/arch/x86/oprofile/op_model_ppro.c Fri Dec >> 14 >> 07:21:43 2007 +0800 @@ -126,6 +127,11 @@ static void >>>> ppro_start(struct op_msrs co CTRL_READ(low, high, msrs, 0); >>>> CTRL_SET_ACTIVE(low); >>>> CTRL_WRITE(low, high, msrs, 0); >>>> + /* Global Control MSR is enabled by default when system power >>>> on. + * However, this may not hold true when xenoprof starts >> to >> run. + */ + if ( ppro_has_global_ctrl ) >>>> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 1); >>>> } >>>> >>>> >>>> @@ -135,6 +141,8 @@ static void ppro_stop(struct op_msrs con >>>> CTRL_READ(low, high, msrs, 0); >>>> CTRL_SET_INACTIVE(low); >>>> CTRL_WRITE(low, high, msrs, 0); >>>> + if ( ppro_has_global_ctrl ) >>>> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 0); >>>> } >>> >>> Cheers, >> >> >> ________________________________ >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel >> >> >> >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Shan, Haitao
2008-Jan-30 10:02 UTC
RE: [Xen-devel] [PATCH] Enable Core 2 DuoPerformanceCountersinHVM guest
Thanks! Best Regards Haitao Shan Keir Fraser wrote:> Good enough. I''ll check it in. > > K. > > > On 30/1/08 09:44, "Shan, Haitao" <haitao.shan@intel.com> wrote: > >> Hi, Keir, >> >> May I know what''s your opinions about the patch now? >> >> Best Regards >> Haitao Shan >> >> I will. This isn''t for 3.2.0 though, so I may not look until after >> the >> 3.2.0 branch. >> >> -- Keri >> >> On 17/12/07 07:22, "Shan, Haitao" <haitao.shan@intel.com> wrote: >> >> >> >> Hi, Keir, >> ? >> I have baked an updated patch. In this patch, I changed some logic?to >> shorten the lengthy part of core2_vpmu_do_wrmsr. And also, I did a >> rebase, since there?is?one?new changeset recently which made changes >> to xenoprofile. >> >> Can you have a look? >> <<pmu.patch>> >> Best Regards >> Haitao Shan >> >> Shan, Haitao wrote: >>> Hi, Salvador, >>> >>> Do you mean the strange indentation around CTRL_WRITE? That is >>> because there are three hard TABs before CTRL_WRITE. I am not sure >>> whether I should fix the original code, so I just leave them there >>> untouched. >>> >>> Haitao Shan >>> >> wrote: >>>> From: Otavio Salvador [mailto:otavio@ossystems.com.br >>> <mailto:otavio@ossystems.com.br> <mailto:otavio@ossystems.com.br> ] >>>> Sent: 2007年12月15日 3:05 > To: Shan, Haitao >>>> Cc: Keir Fraser; xen-devel@lists.xensource.com; Jiang, Yunhong >>>> Subject: Re: [Xen-devel] Re: [PATCH] Enable Core 2 Duo >>>> PerformanceCounters inHVM guest >>>> >>>> "Shan, Haitao" <haitao.shan@intel.com> writes: >>>> >>>> Hello Haitao, >>>> >>>> I''ve done a look on the patch and found two places with wrong >>> coding > style. Take a look bellow: >>>> >>>>> diff -r 8f0cbfc478d6 xen/arch/x86/oprofile/op_model_ppro.c >>>>> --- a/xen/arch/x86/oprofile/op_model_ppro.c Thu Dec 13 09:31:03 >>> 2007 >> +0000 +++ b/xen/arch/x86/oprofile/op_model_ppro.c Fri Dec >>> 14 >> 07:21:43 2007 +0800 @@ -126,6 +127,11 @@ static void >>>>> ppro_start(struct op_msrs co CTRL_READ(low, high, msrs, 0); >>>>> CTRL_SET_ACTIVE(low); CTRL_WRITE(low, high, msrs, 0); >>>>> + /* Global Control MSR is enabled by default when system power >>>>> on. + * However, this may not hold true when xenoprof starts >>> to >> run. + */ + if ( ppro_has_global_ctrl ) >>>>> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 1); >>>>> } >>>>> >>>>> >>>>> @@ -135,6 +141,8 @@ static void ppro_stop(struct op_msrs con >>>>> CTRL_READ(low, high, msrs, 0); >>>>> CTRL_SET_INACTIVE(low); >>>>> CTRL_WRITE(low, high, msrs, 0); >>>>> + if ( ppro_has_global_ctrl ) >>>>> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 0); >>>>> } >>>> >>>> Cheers, >>> >>> >>> ________________________________ >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >>> >>> >>> >>> >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Shan, Haitao
2008-Jan-31 05:45 UTC
RE: [Xen-devel] [PATCH] Enable Core 2 DuoPerformanceCountersinHVM guest
Hi, Keir, Thanks for your checking in the patch. I think a little part of the original patch may be dropped by accident. I attach it here. diff -r 5c30a9dec02d xen/arch/x86/oprofile/nmi_int.c --- a/xen/arch/x86/oprofile/nmi_int.c Wed Jan 30 18:39:04 2008 +0000 +++ b/xen/arch/x86/oprofile/nmi_int.c Wed Jan 30 22:42:22 2008 +0800 @@ -291,12 +291,16 @@ static int __init p4_init(char ** cpu_ty } +extern int ppro_has_global_ctrl; static int __init ppro_init(char ** cpu_type) { __u8 cpu_model = current_cpu_data.x86_model; if (cpu_model == 15 || cpu_model == 23) + { *cpu_type = "i386/core_2"; + ppro_has_global_ctrl = 1; + } else if (cpu_model == 14) *cpu_type = "i386/core"; else if (cpu_model > 13) { Best Regards Haitao Shan Shan, Haitao wrote:> Thanks! > > Best Regards > Haitao Shan > > Keir Fraser wrote: >> Good enough. I''ll check it in. >> >> K. >> >> >> On 30/1/08 09:44, "Shan, Haitao" <haitao.shan@intel.com> wrote: >> >>> Hi, Keir, >>> >>> May I know what''s your opinions about the patch now? >>> >>> Best Regards >>> Haitao Shan >>> >>> I will. This isn''t for 3.2.0 though, so I may not look until after >>> the >>> 3.2.0 branch. >>> >>> -- Keri >>> >>> On 17/12/07 07:22, "Shan, Haitao" <haitao.shan@intel.com> wrote: >>> >>> >>> >>> Hi, Keir, >>> ? >>> I have baked an updated patch. In this patch, I changed some >>> logic?to shorten the lengthy part of core2_vpmu_do_wrmsr. And also, >>> I did a rebase, since there?is?one?new changeset recently which >>> made changes to xenoprofile. >>> >>> Can you have a look? >>> <<pmu.patch>> >>> Best Regards >>> Haitao Shan >>> >>> Shan, Haitao wrote: >>>> Hi, Salvador, >>>> >>>> Do you mean the strange indentation around CTRL_WRITE? That is >>>> because there are three hard TABs before CTRL_WRITE. I am not sure >>>> whether I should fix the original code, so I just leave them there >>>> untouched. >>>> >>>> Haitao Shan >>>> >>> wrote: >>>>> From: Otavio Salvador [mailto:otavio@ossystems.com.br >>>> <mailto:otavio@ossystems.com.br> <mailto:otavio@ossystems.com.br> >>>> ] >>>>> Sent: 2007年12月15日 3:05 > To: Shan, Haitao >>>>> Cc: Keir Fraser; xen-devel@lists.xensource.com; Jiang, Yunhong >>>>> Subject: Re: [Xen-devel] Re: [PATCH] Enable Core 2 Duo >>>>> PerformanceCounters inHVM guest >>>>> >>>>> "Shan, Haitao" <haitao.shan@intel.com> writes: >>>>> >>>>> Hello Haitao, >>>>> >>>>> I''ve done a look on the patch and found two places with wrong >>>> coding > style. Take a look bellow: >>>>> >>>>>> diff -r 8f0cbfc478d6 xen/arch/x86/oprofile/op_model_ppro.c >>>>>> --- a/xen/arch/x86/oprofile/op_model_ppro.c Thu Dec 13 09:31:03 >>>> 2007 >> +0000 +++ b/xen/arch/x86/oprofile/op_model_ppro.c Fri >>>> Dec 14 >> 07:21:43 2007 +0800 @@ -126,6 +127,11 @@ static void >>>>>> ppro_start(struct op_msrs co CTRL_READ(low, high, msrs, 0); >>>>>> CTRL_SET_ACTIVE(low); CTRL_WRITE(low, high, msrs, 0); >>>>>> + /* Global Control MSR is enabled by default when system >>>>>> power on. + * However, this may not hold true when xenoprof >>>>>> starts >>>> to >> run. + */ + if ( ppro_has_global_ctrl ) >>>>>> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 1); >>>>>> } >>>>>> >>>>>> >>>>>> @@ -135,6 +141,8 @@ static void ppro_stop(struct op_msrs con >>>>>> CTRL_READ(low, high, msrs, 0); >>>>>> CTRL_SET_INACTIVE(low); >>>>>> CTRL_WRITE(low, high, msrs, 0); >>>>>> + if ( ppro_has_global_ctrl ) >>>>>> + wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, 0); >>>>>> } >>>>> >>>>> Cheers, >>>> >>>> >>>> ________________________________ >>>> >>>> _______________________________________________ >>>> Xen-devel mailing list >>>> Xen-devel@lists.xensource.com >>>> http://lists.xensource.com/xen-devel >>>> >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> Xen-devel mailing list >>>> Xen-devel@lists.xensource.com >>>> http://lists.xensource.com/xen-devel >>> >>> _______________________________________________ >>> Xen-devel mailing list >>> Xen-devel@lists.xensource.com >>> http://lists.xensource.com/xen-devel >> >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@lists.xensource.com >> http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel