Skip to content

Commit

Permalink
Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/l…
Browse files Browse the repository at this point in the history
…inux/kernel/git/tip/linux-2.6-tip

* 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  perf: Fix callchain hit bad cast on ascii display
  arch/x86/oprofile/op_model_amd.c: Perform initialisation on a single CPU
  watchdog: Improve initialisation error message and documentation
  • Loading branch information
Linus Torvalds committed Jan 3, 2011
2 parents 4c37a4b + a0a2b71 commit 03ed6a3
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 11 deletions.
2 changes: 1 addition & 1 deletion Documentation/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1759,7 +1759,7 @@ and is between 256 and 4096 characters. It is defined in the file

nousb [USB] Disable the USB subsystem

nowatchdog [KNL] Disable the lockup detector.
nowatchdog [KNL] Disable the lockup detector (NMI watchdog).

nowb [ARM]

Expand Down
24 changes: 16 additions & 8 deletions arch/x86/oprofile/op_model_amd.c
Original file line number Diff line number Diff line change
Expand Up @@ -630,21 +630,29 @@ static int __init_ibs_nmi(void)
return 0;
}

/* initialize the APIC for the IBS interrupts if available */
/*
* check and reserve APIC extended interrupt LVT offset for IBS if
* available
*
* init_ibs() preforms implicitly cpu-local operations, so pin this
* thread to its current CPU
*/

static void init_ibs(void)
{
ibs_caps = get_ibs_caps();
preempt_disable();

ibs_caps = get_ibs_caps();
if (!ibs_caps)
return;
goto out;

if (__init_ibs_nmi()) {
if (__init_ibs_nmi() < 0)
ibs_caps = 0;
return;
}
else
printk(KERN_INFO "oprofile: AMD IBS detected (0x%08x)\n", ibs_caps);

printk(KERN_INFO "oprofile: AMD IBS detected (0x%08x)\n",
(unsigned)ibs_caps);
out:
preempt_enable();
}

static int (*create_arch_files)(struct super_block *sb, struct dentry *root);
Expand Down
3 changes: 2 additions & 1 deletion kernel/watchdog.c
Original file line number Diff line number Diff line change
Expand Up @@ -364,7 +364,8 @@ static int watchdog_nmi_enable(int cpu)
goto out_save;
}

printk(KERN_ERR "NMI watchdog failed to create perf event on cpu%i: %p\n", cpu, event);
printk(KERN_ERR "NMI watchdog disabled for cpu%i: unable to create perf event: %ld\n",
cpu, PTR_ERR(event));
return PTR_ERR(event);

/* success path */
Expand Down
2 changes: 1 addition & 1 deletion tools/perf/util/hist.c
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,7 @@ static size_t ipchain__fprintf_graph_line(FILE *fp, int depth, int depth_mask,

static size_t ipchain__fprintf_graph(FILE *fp, struct callchain_list *chain,
int depth, int depth_mask, int period,
u64 total_samples, int hits,
u64 total_samples, u64 hits,
int left_margin)
{
int i;
Expand Down

0 comments on commit 03ed6a3

Please sign in to comment.