Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

perf tools: Introduce dump_stack signal helper

To use in stdio based tools, like 'trace'.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: David Ahern <dsahern@gmail.com>
Cc: Don Zickus <dzickus@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/n/tip-79kjmerlw6d88csyx1afzwvn@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

+8
+7
tools/perf/util/util.c
··· 269 269 void dump_stack(void) {} 270 270 #endif 271 271 272 + void sighandler_dump_stack(int sig) 273 + { 274 + psignal(sig, "perf"); 275 + dump_stack(); 276 + exit(sig); 277 + } 278 + 272 279 void get_term_dimensions(struct winsize *ws) 273 280 { 274 281 char *s = getenv("LINES");
+1
tools/perf/util/util.h
··· 277 277 char *rtrim(char *s); 278 278 279 279 void dump_stack(void); 280 + void sighandler_dump_stack(int sig); 280 281 281 282 extern unsigned int page_size; 282 283 extern int cacheline_size;