[DCCP]: Convert do_gettimeofday() to getnstimeofday().

What do_gettimeofday() does is to call getnstimeofday() and
to convert the result from timespec{} to timeval{}.
We do not always need timeval{} and we can convert timespec{}
when we really need (to print).

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
YOSHIFUJI Hideaki 2008-04-21 14:28:45 -07:00 committed by David S. Miller
parent 633d424bf3
commit cdd04d98f6

View File

@ -46,29 +46,24 @@ struct {
struct kfifo *fifo; struct kfifo *fifo;
spinlock_t lock; spinlock_t lock;
wait_queue_head_t wait; wait_queue_head_t wait;
struct timeval tstart; struct timespec tstart;
} dccpw; } dccpw;
static void printl(const char *fmt, ...) static void printl(const char *fmt, ...)
{ {
va_list args; va_list args;
int len; int len;
struct timeval now; struct timespec now;
char tbuf[256]; char tbuf[256];
va_start(args, fmt); va_start(args, fmt);
do_gettimeofday(&now); getnstimeofday(&now);
now.tv_sec -= dccpw.tstart.tv_sec; now = timespec_sub(now, dccpw.tstart);
now.tv_usec -= dccpw.tstart.tv_usec;
if (now.tv_usec < 0) {
--now.tv_sec;
now.tv_usec += 1000000;
}
len = sprintf(tbuf, "%lu.%06lu ", len = sprintf(tbuf, "%lu.%06lu ",
(unsigned long) now.tv_sec, (unsigned long) now.tv_sec,
(unsigned long) now.tv_usec); (unsigned long) now.tv_nsec / NSEC_PER_USEC);
len += vscnprintf(tbuf+len, sizeof(tbuf)-len, fmt, args); len += vscnprintf(tbuf+len, sizeof(tbuf)-len, fmt, args);
va_end(args); va_end(args);
@ -119,7 +114,7 @@ static struct jprobe dccp_send_probe = {
static int dccpprobe_open(struct inode *inode, struct file *file) static int dccpprobe_open(struct inode *inode, struct file *file)
{ {
kfifo_reset(dccpw.fifo); kfifo_reset(dccpw.fifo);
do_gettimeofday(&dccpw.tstart); getnstimeofday(&dccpw.tstart);
return 0; return 0;
} }