| Index: main.c
|
| diff --git a/main.c b/main.c
|
| index 74929408a89ebbb7018d7bf0c6887268d0812f17..6038fd662610fc9f743e4f3506b70d2aec21d41b 100644
|
| --- a/main.c
|
| +++ b/main.c
|
| @@ -12,17 +12,20 @@
|
| #include <string.h>
|
| #include <unistd.h>
|
|
|
| +#include <debug.h>
|
| #include <eprintf.h>
|
| #include <style.h>
|
|
|
| #include "ktop.h"
|
|
|
| -int Command;
|
| +bool Halt = FALSE;
|
|
|
| bool Dump = FALSE;
|
| -bool Trace_exit = FALSE;
|
| +bool Trace_exit = TRUE;
|
| bool Trace_self = FALSE;
|
|
|
| +display_fn Display = kernel_display;
|
| +
|
| pid_t gettid(void) { return syscall(__NR_gettid); }
|
|
|
| u8 Ignore_pid[(MAX_PID + 4) / 8];
|
| @@ -49,6 +52,10 @@ bool do_ignore_pid(int pid)
|
|
|
| void cleanup(int sig)
|
| {
|
| +PRd(sig);
|
| + if (sig) {
|
| + fprintf(stderr, "died because %d\n", sig);
|
| + }
|
| cleanup_collector();
|
| cleanup_display();
|
| exit(0);
|
| @@ -109,12 +116,12 @@ static void init(int argc, char *argv[])
|
|
|
| void quit(void)
|
| {
|
| - Command = 1;
|
| + Halt = TRUE;
|
| }
|
|
|
| void clear(void)
|
| {
|
| - clear_display();
|
| + reset_reduce();
|
| }
|
|
|
| void commander(void)
|
| @@ -129,6 +136,21 @@ void commander(void)
|
| case 'c':
|
| clear();
|
| break;
|
| + case '<':
|
| + decrease_reduce_interval();
|
| + break;
|
| + case '>':
|
| + increase_reduce_interval();
|
| + break;
|
| + case 'i':
|
| + Display = internal_display;
|
| + break;
|
| + case 'k':
|
| + Display = kernel_display;
|
| + break;
|
| + case 'f':
|
| + Display = file_system_display;
|
| + break;
|
| default:
|
| break; // ignore
|
| }
|
| @@ -137,9 +159,11 @@ void commander(void)
|
|
|
| int main(int argc, char **argv)
|
| {
|
| - pthread_t display_thread;
|
| + pthread_t reduce_thread;
|
| int rc;
|
|
|
| + debugstderr();
|
| +
|
| init(argc, argv);
|
|
|
| ignore_pid(gettid());
|
| @@ -147,7 +171,7 @@ int main(int argc, char **argv)
|
| start_collector();
|
|
|
| if (!Dump) {
|
| - rc = pthread_create(&display_thread, NULL, display, NULL);
|
| + rc = pthread_create(&reduce_thread, NULL, reduce, NULL);
|
| }
|
| commander();
|
|
|
|
|