lib: remove RUSAGE_T from struct thread

* thread.c: It's only temporarily used in thread_call() to calculate the
  diffs. Saves 80 bytes per copy.

Signed-off-by: Jorge Boncompte [DTI2] <jorge@dti2.net>
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/lib/thread.c b/lib/thread.c
index dd0413b..784b29c 100644
--- a/lib/thread.c
+++ b/lib/thread.c
@@ -1146,7 +1146,7 @@
 thread_should_yield (struct thread *thread)
 {
   quagga_get_relative (NULL);
-  return (timeval_elapsed(relative_time, thread->ru.real) >
+  return (timeval_elapsed(relative_time, thread->real) >
   	  THREAD_YIELD_TIME_SLOT);
 }
 
@@ -1175,7 +1175,7 @@
 thread_call (struct thread *thread)
 {
   unsigned long realtime, cputime;
-  RUSAGE_T ru;
+  RUSAGE_T before, after;
 
  /* Cache a pointer to the relevant cpu history thread, if the thread
   * does not have it yet.
@@ -1194,13 +1194,14 @@
                     (void * (*) (void *))cpu_record_hash_alloc);
     }
 
-  GETRUSAGE (&thread->ru);
+  GETRUSAGE (&before);
+  thread->real = before.real;
 
   (*thread->func) (thread);
 
-  GETRUSAGE (&ru);
+  GETRUSAGE (&after);
 
-  realtime = thread_consumed_time (&ru, &thread->ru, &cputime);
+  realtime = thread_consumed_time (&after, &before, &cputime);
   thread->hist->real.total += realtime;
   if (thread->hist->real.max < realtime)
     thread->hist->real.max = realtime;
diff --git a/lib/thread.h b/lib/thread.h
index dfc51e2..56f4d07 100644
--- a/lib/thread.h
+++ b/lib/thread.h
@@ -77,7 +77,7 @@
     int fd;			/* file descriptor in case of read/write. */
     struct timeval sands;	/* rest of time sands value. */
   } u;
-  RUSAGE_T ru;			/* Indepth usage info.  */
+  struct timeval real;
   struct cpu_thread_history *hist; /* cache pointer to cpu_history */
   char* funcname;
 };