[BUGFIX] perf record: remove unneeded gettimeofday() call

From: Russ Anderson
Date: Tue May 18 2010 - 18:52:48 EST


Perf record repeatedly calls gettimeofday() which adds noise to the performance
measurements. Since gettimeofday() is only used for the error printf,
delete it.

Signed-off-by: Russ Anderson <rja@xxxxxxx>

---
tools/perf/builtin-record.c | 17 +----------------
1 file changed, 1 insertion(+), 16 deletions(-)

Index: linux/tools/perf/builtin-record.c
===================================================================
--- linux.orig/tools/perf/builtin-record.c 2010-05-18 16:03:58.000000000 -0500
+++ linux/tools/perf/builtin-record.c 2010-05-18 17:28:00.765537656 -0500
@@ -64,9 +64,6 @@ static bool multiplex = false;
static int multiplex_fd = -1;

static long samples = 0;
-static struct timeval last_read;
-static struct timeval this_read;
-
static u64 bytes_written = 0;

static struct pollfd *event_array;
@@ -146,8 +143,6 @@ static void mmap_read(struct mmap_data *
void *buf;
int diff;

- gettimeofday(&this_read, NULL);
-
/*
* If we're further behind than half the buffer, there's a chance
* the writer will bite our tail and mess up the samples under us.
@@ -158,23 +153,13 @@ static void mmap_read(struct mmap_data *
*/
diff = head - old;
if (diff < 0) {
- struct timeval iv;
- unsigned long msecs;
-
- timersub(&this_read, &last_read, &iv);
- msecs = iv.tv_sec*1000 + iv.tv_usec/1000;
-
- fprintf(stderr, "WARNING: failed to keep up with mmap data."
- " Last read %lu msecs ago.\n", msecs);
-
+ fprintf(stderr, "WARNING: failed to keep up with mmap data\n");
/*
* head points to a known good entry, start there.
*/
old = head;
}

- last_read = this_read;
-
if (old != head)
samples++;

--
Russ Anderson, OS RAS/Partitioning Project Lead
SGI - Silicon Graphics Inc rja@xxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/