perf tools: Remove expensive old debug code from perf top
authorMike Galbraith <efault@gmx.de>
Tue, 13 Oct 2009 12:57:20 +0000 (14:57 +0200)
committerIngo Molnar <mingo@elte.hu>
Tue, 13 Oct 2009 13:30:15 +0000 (15:30 +0200)
Calling gettimeofday() at high frequency is painful for handicapped
boxen. The spot calling gettimeofday() is old unneeded debug code,
so remove it.

Reported-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Mike Galbraith <efault@gmx.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1255438640.7173.1.camel@marge.simson.net>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
tools/perf/builtin-top.c

index c0f69e8..2d8806b 100644 (file)
@@ -870,8 +870,6 @@ static unsigned int mmap_read_head(struct mmap_data *md)
        return head;
 }
 
-struct timeval last_read, this_read;
-
 static void mmap_read_counter(struct mmap_data *md)
 {
        unsigned int head = mmap_read_head(md);
@@ -879,8 +877,6 @@ static void mmap_read_counter(struct mmap_data *md)
        unsigned char *data = md->base + page_size;
        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.
@@ -891,14 +887,7 @@ static void mmap_read_counter(struct mmap_data *md)
         */
        diff = head - old;
        if (diff > md->mask / 2 || 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.
@@ -906,8 +895,6 @@ static void mmap_read_counter(struct mmap_data *md)
                old = head;
        }
 
-       last_read = this_read;
-
        for (; old != head;) {
                event_t *event = (event_t *)&data[old & md->mask];