aboutsummaryrefslogtreecommitdiffstats
path: root/kernel-shark.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel-shark.c')
-rw-r--r--kernel-shark.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/kernel-shark.c b/kernel-shark.c
index 5961e30..069a9c0 100644
--- a/kernel-shark.c
+++ b/kernel-shark.c
@@ -66,6 +66,8 @@ void usage(char *prog)
66 printf(" -v Display version and exit\n"); 66 printf(" -v Display version and exit\n");
67 printf(" -i input_file, default is %s\n", default_input_file); 67 printf(" -i input_file, default is %s\n", default_input_file);
68 printf(" -c Ignore records before system release\n"); 68 printf(" -c Ignore records before system release\n");
69 printf(" -s (float) Seconds after first record to begin displaying\n");
70 printf(" -d (float) Seconds of data to display\n");
69} 71}
70 72
71static gboolean display_warnings; 73static gboolean display_warnings;
@@ -1831,6 +1833,9 @@ void kernel_shark(int argc, char **argv)
1831 int ret; 1833 int ret;
1832 int c; 1834 int c;
1833 int clean; 1835 int clean;
1836 double start = 0.0;
1837 double duration = 0.0;
1838
1834 1839
1835 g_thread_init(NULL); 1840 g_thread_init(NULL);
1836 gdk_threads_init(); 1841 gdk_threads_init();
@@ -1838,7 +1843,7 @@ void kernel_shark(int argc, char **argv)
1838 gtk_init(&argc, &argv); 1843 gtk_init(&argc, &argv);
1839 1844
1840 clean = 0; 1845 clean = 0;
1841 while ((c = getopt(argc, argv, "hcvi:")) != -1) { 1846 while ((c = getopt(argc, argv, "hcvs:d:i:")) != -1) {
1842 switch(c) { 1847 switch(c) {
1843 case 'h': 1848 case 'h':
1844 usage(basename(argv[0])); 1849 usage(basename(argv[0]));
@@ -1854,6 +1859,12 @@ void kernel_shark(int argc, char **argv)
1854 case 'c': 1859 case 'c':
1855 clean = 1; 1860 clean = 1;
1856 break; 1861 break;
1862 case 's':
1863 start = atof(optarg);
1864 break;
1865 case 'd':
1866 duration = atof(optarg);
1867 break;
1857 default: 1868 default:
1858 /* assume the other options are for gtk */ 1869 /* assume the other options are for gtk */
1859 break; 1870 break;
@@ -2408,6 +2419,9 @@ void kernel_shark(int argc, char **argv)
2408 2419
2409 info->ginfo = trace_graph_create_with_callbacks(handle, &info->graph_cbs); 2420 info->ginfo = trace_graph_create_with_callbacks(handle, &info->graph_cbs);
2410 info->ginfo->rtg_info.clean_records = clean; 2421 info->ginfo->rtg_info.clean_records = clean;
2422 info->ginfo->rtg_info.start_offset = start;
2423 info->ginfo->rtg_info.duration = duration;
2424
2411 widget = trace_graph_get_window(info->ginfo); 2425 widget = trace_graph_get_window(info->ginfo);
2412 gtk_paned_add1(GTK_PANED(vpaned), widget); 2426 gtk_paned_add1(GTK_PANED(vpaned), widget);
2413 gtk_widget_show(widget); 2427 gtk_widget_show(widget);