diff options
| author | Ingo Molnar <mingo@kernel.org> | 2014-12-08 11:50:24 +0100 | 
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2014-12-08 11:50:24 +0100 | 
| commit | 2a2662bf88e693d477ef08351d03934f7bc0b51c (patch) | |
| tree | cef243df159cc12ada7e97998a253df7c0abb2a2 /tools/perf/ui/browsers | |
| parent | b2776bf7149bddd1f4161f14f79520f17fc1d71d (diff) | |
| parent | 36748b9518a2437beffe861b47dff6d12b736b3f (diff) | |
Merge branch 'perf/core-v3' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks into perf/hw_breakpoints
Pull AMD range breakpoints support from Frederic Weisbecker:
" - Extend breakpoint tools and core to support address range through perf
    event with initial backend support for AMD extended breakpoints.
    Syntax is:
           perf record -e mem:addr/len:type
    For example set write breakpoint from 0x1000 to 0x1200 (0x1000 + 512)
           perf record -e mem:0x1000/512:w
 - Clean up a bit breakpoint code validation
 It has been acked by Jiri and Oleg. "
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/ui/browsers')
| -rw-r--r-- | tools/perf/ui/browsers/annotate.c | 13 | ||||
| -rw-r--r-- | tools/perf/ui/browsers/hists.c | 17 | 
2 files changed, 12 insertions, 18 deletions
diff --git a/tools/perf/ui/browsers/annotate.c b/tools/perf/ui/browsers/annotate.c index f0697a3aede0..1e0a2fd80115 100644 --- a/tools/perf/ui/browsers/annotate.c +++ b/tools/perf/ui/browsers/annotate.c @@ -27,6 +27,7 @@ static struct annotate_browser_opt {  	bool hide_src_code,  	     use_offset,  	     jump_arrows, +	     show_linenr,  	     show_nr_jumps;  } annotate_browser__opts = {  	.use_offset	= true, @@ -128,7 +129,11 @@ static void annotate_browser__write(struct ui_browser *browser, void *entry, int  	if (!*dl->line)  		slsmg_write_nstring(" ", width - pcnt_width);  	else if (dl->offset == -1) { -		printed = scnprintf(bf, sizeof(bf), "%*s  ", +		if (dl->line_nr && annotate_browser__opts.show_linenr) +			printed = scnprintf(bf, sizeof(bf), "%-*d ", +					ab->addr_width + 1, dl->line_nr); +		else +			printed = scnprintf(bf, sizeof(bf), "%*s  ",  				    ab->addr_width, " ");  		slsmg_write_nstring(bf, printed);  		slsmg_write_nstring(dl->line, width - printed - pcnt_width + 1); @@ -733,6 +738,7 @@ static int annotate_browser__run(struct annotate_browser *browser,  		"o             Toggle disassembler output/simplified view\n"  		"s             Toggle source code view\n"  		"/             Search string\n" +		"k             Toggle line numbers\n"  		"r             Run available scripts\n"  		"?             Search string backwards\n");  			continue; @@ -741,6 +747,10 @@ static int annotate_browser__run(struct annotate_browser *browser,  				script_browse(NULL);  				continue;  			} +		case 'k': +			annotate_browser__opts.show_linenr = +				!annotate_browser__opts.show_linenr; +			break;  		case 'H':  			nd = browser->curr_hot;  			break; @@ -984,6 +994,7 @@ static struct annotate_config {  } annotate__configs[] = {  	ANNOTATE_CFG(hide_src_code),  	ANNOTATE_CFG(jump_arrows), +	ANNOTATE_CFG(show_linenr),  	ANNOTATE_CFG(show_nr_jumps),  	ANNOTATE_CFG(use_offset),  }; diff --git a/tools/perf/ui/browsers/hists.c b/tools/perf/ui/browsers/hists.c index cfb976b3de3a..12c17c5a3d68 100644 --- a/tools/perf/ui/browsers/hists.c +++ b/tools/perf/ui/browsers/hists.c @@ -463,23 +463,6 @@ out:  	return key;  } -static char *callchain_list__sym_name(struct callchain_list *cl, -				      char *bf, size_t bfsize, bool show_dso) -{ -	int printed; - -	if (cl->ms.sym) -		printed = scnprintf(bf, bfsize, "%s", cl->ms.sym->name); -	else -		printed = scnprintf(bf, bfsize, "%#" PRIx64, cl->ip); - -	if (show_dso) -		scnprintf(bf + printed, bfsize - printed, " %s", -			  cl->ms.map ? cl->ms.map->dso->short_name : "unknown"); - -	return bf; -} -  struct callchain_print_arg {  	/* for hists browser */  	off_t	row_offset;  | 
