diff options
Diffstat (limited to 'kernel-shark.c')
-rw-r--r-- | kernel-shark.c | 16 |
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 | ||
71 | static gboolean display_warnings; | 73 | static 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); |