Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 128211
b: refs/heads/master
c: fc81be8
h: refs/heads/master
i:
  128209: 134d9a2
  128207: 765258a
v: v3
  • Loading branch information
Robert Richter committed Jan 7, 2009
1 parent 0b00e15 commit 50a1fca
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 13 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6368a1f4d99fe9a1990ef3f04ab2d2ce9dad0a7c
refs/heads/master: fc81be8ca29e28bfb89aa23359036a8ad4118d0f
24 changes: 12 additions & 12 deletions trunk/arch/x86/oprofile/op_model_amd.c
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ struct ibs_op_sample {
unsigned int ibs_dc_phys_high;
};

static int ibs_allowed; /* AMD Family10h and later */
static int has_ibs; /* AMD Family10h and later */

struct op_ibs_config {
unsigned long op_enabled;
Expand Down Expand Up @@ -201,7 +201,7 @@ op_amd_handle_ibs(struct pt_regs * const regs,
struct ibs_fetch_sample ibs_fetch;
struct ibs_op_sample ibs_op;

if (!ibs_allowed)
if (!has_ibs)
return 1;

if (ibs_config.fetch_enabled) {
Expand Down Expand Up @@ -305,14 +305,14 @@ static void op_amd_start(struct op_msrs const * const msrs)
}

#ifdef CONFIG_OPROFILE_IBS
if (ibs_allowed && ibs_config.fetch_enabled) {
if (has_ibs && ibs_config.fetch_enabled) {
low = (ibs_config.max_cnt_fetch >> 4) & 0xFFFF;
high = ((ibs_config.rand_en & 0x1) << 25) /* bit 57 */
+ IBS_FETCH_HIGH_ENABLE;
wrmsr(MSR_AMD64_IBSFETCHCTL, low, high);
}

if (ibs_allowed && ibs_config.op_enabled) {
if (has_ibs && ibs_config.op_enabled) {
low = ((ibs_config.max_cnt_op >> 4) & 0xFFFF)
+ ((ibs_config.dispatched_ops & 0x1) << 19) /* bit 19 */
+ IBS_OP_LOW_ENABLE;
Expand Down Expand Up @@ -341,14 +341,14 @@ static void op_amd_stop(struct op_msrs const * const msrs)
}

#ifdef CONFIG_OPROFILE_IBS
if (ibs_allowed && ibs_config.fetch_enabled) {
if (has_ibs && ibs_config.fetch_enabled) {
/* clear max count and enable */
low = 0;
high = 0;
wrmsr(MSR_AMD64_IBSFETCHCTL, low, high);
}

if (ibs_allowed && ibs_config.op_enabled) {
if (has_ibs && ibs_config.op_enabled) {
/* clear max count and enable */
low = 0;
high = 0;
Expand Down Expand Up @@ -437,20 +437,20 @@ static int init_ibs_nmi(void)
/* uninitialize the APIC for the IBS interrupts if needed */
static void clear_ibs_nmi(void)
{
if (ibs_allowed)
if (has_ibs)
on_each_cpu(apic_clear_ibs_nmi_per_cpu, NULL, 1);
}

/* initialize the APIC for the IBS interrupts if available */
static void ibs_init(void)
{
ibs_allowed = boot_cpu_has(X86_FEATURE_IBS);
has_ibs = boot_cpu_has(X86_FEATURE_IBS);

if (!ibs_allowed)
if (!has_ibs)
return;

if (init_ibs_nmi()) {
ibs_allowed = 0;
has_ibs = 0;
return;
}

Expand All @@ -459,7 +459,7 @@ static void ibs_init(void)

static void ibs_exit(void)
{
if (!ibs_allowed)
if (!has_ibs)
return;

clear_ibs_nmi();
Expand All @@ -479,7 +479,7 @@ static int setup_ibs_files(struct super_block *sb, struct dentry *root)
if (ret)
return ret;

if (!ibs_allowed)
if (!has_ibs)
return ret;

/* model specific files */
Expand Down

0 comments on commit 50a1fca

Please sign in to comment.