Robert,
This patch was applied.
On Tue, Jun 24, 2008 at 11:36 AM, Robert Richter <[EMAIL PROTECTED]> wrote:
> This patch removes the obsolete IBS flags HAS_IBS_EXT and
> USE_EI. Since Barcelona RevB these features are always
> available. Thus, they are no longer needed.
>
> Signed-off-by: Robert Richter <[EMAIL PROTECTED]>
> ---
> arch/x86/perfmon/perfmon_amd64.c | 37 ++++++++-----------------------------
> 1 files changed, 8 insertions(+), 29 deletions(-)
>
> diff --git a/arch/x86/perfmon/perfmon_amd64.c
> b/arch/x86/perfmon/perfmon_amd64.c
> index d8ad321..f60ce8e 100644
> --- a/arch/x86/perfmon/perfmon_amd64.c
> +++ b/arch/x86/perfmon/perfmon_amd64.c
> @@ -43,8 +43,6 @@ MODULE_PARM_DESC(force_nmi, "bool: force use of NMI for PMU
> interrupt");
> module_param(force_nmi, bool, 0600);
>
> #define HAS_IBS 0x01 /* has IBS support */
> -#define HAS_IBS_EXT 0x02 /* has extended IBS support */
> -#define USE_EI 0x04 /* uses extended interrupts */
>
> static u8 ibs_eilvt_off, ibs_status; /* AMD: extended interrupt LVT offset
> */
>
> @@ -397,9 +395,7 @@ static void pfm_amd64_check_registers(void)
> {
> u16 i;
>
> - PFM_DBG("has_ibs=%d has_ibs_ext=%d",
> - !!(ibs_status & HAS_IBS),
> - !!(ibs_status & HAS_IBS_EXT));
> + PFM_DBG("has_ibs=%d", !!(ibs_status & HAS_IBS));
>
> __set_bit(0, cast_ulp(enable_mask));
> __set_bit(1, cast_ulp(enable_mask));
> @@ -423,13 +419,6 @@ static void pfm_amd64_check_registers(void)
> }
>
> /*
> - * remove IBS extended registers if feature not present
> - */
> - if (!(ibs_status & HAS_IBS_EXT)) {
> - for (i = 11; i < 14; i++)
> - pfm_amd64_pmd_desc[i].type = PFM_REG_NA;
> - }
> - /*
> * adjust reserved bit fields for family 16
> */
> if (current_cpu_data.x86 == 16) {
> @@ -451,10 +440,9 @@ static int pfm_amd64_probe_pmu(void)
> case 16:
> if (current_cpu_data.x86_model >= 2) {
> /* Family 10h, RevB and later */
> - ibs_status |= HAS_IBS_EXT | USE_EI;
> + ibs_status |= HAS_IBS;
> + rdmsrl(MSR_AMD64_IBSCTL, val);
> }
> - ibs_status |= HAS_IBS;
> - rdmsrl(MSR_AMD64_IBSCTL, val);
> case 15:
> case 6:
> PFM_INFO("found family=%d VAL=0x%llx", current_cpu_data.x86,
> (unsigned long long)val);
> @@ -479,27 +467,18 @@ static int pfm_amd64_probe_pmu(void)
> if (force_nmi)
> pfm_amd64_pmu_info.flags |= PFM_X86_FL_USE_NMI;
>
> - /* Setup extended interrupt */
> - if (ibs_status & USE_EI) {
> + if (ibs_status & HAS_IBS) {
> + /* Setup extended interrupt */
> if (pfm_amd64_setup_eilvt()) {
> PFM_INFO("Failed to initialize extended interrupts "
> "for IBS");
> - ibs_status &= ~(HAS_IBS | HAS_IBS_EXT | USE_EI);
> + ibs_status &= ~HAS_IBS;
> PFM_INFO("Unable to use IBS");
> + } else {
> + PFM_INFO("IBS supported");
> }
> }
>
> - if (ibs_status & HAS_IBS)
> - PFM_INFO("IBS supported");
> -
> - if (ibs_status & HAS_IBS_EXT)
> - PFM_INFO("IBS extended registers supported");
> -
> - if (ibs_status & USE_EI)
> - PFM_INFO("Using extended interrupts for IBS");
> - else if (ibs_status & (HAS_IBS|HAS_IBS_EXT))
> - PFM_INFO("Using performance counter interrupts for IBS");
> -
> pfm_amd64_check_registers();
>
> return 0;
> --
> 1.5.5.3
>
>
>
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
perfmon2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel