diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-23 15:23:45 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-23 15:23:45 -0400 |
commit | b0d19a378a409373244088511e889957645f2a44 (patch) | |
tree | 25275409eeea845f2e7617f12c8f28801ee4198f /net/dccp | |
parent | 0093cb1199ec551f179562ca9fbd6f64fb750645 (diff) | |
parent | d7d313000ba2fc94a5383511a17ff38a39bab928 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
iwlwifi: Fix built-in compilation of iwlcore
net: Unexport move_addr_to_{kernel,user}
rt2x00: Select LEDS_CLASS.
iwlwifi: Select LEDS_CLASS.
leds: Do not guard NEW_LEDS with HAS_IOMEM
[IPSEC]: Fix catch-22 with algorithm IDs above 31
time: Export set_normalized_timespec.
tcp: Make use of before macro in tcp_input.c
hamradio: Remove unneeded and deprecated cli()/sti() calls in dmascc.c
[NETNS]: Remove empty ->init callback.
[DCCP]: Convert do_gettimeofday() to getnstimeofday().
[NETNS]: Don't initialize err variable twice.
[NETNS]: The ip6_fib_timer can work with garbage on net namespace stop.
[IPV4]: Convert do_gettimeofday() to getnstimeofday().
[IPV4]: Make icmp_sk_init() static.
[IPV6]: Make struct ip6_prohibit_entry_template static.
tcp: Trivial fix to correct function name in a comment in net/ipv4/tcp.c
[NET]: Expose netdevice dev_id through sysfs
skbuff: fix missing kernel-doc notation
[ROSE]: Fix soft lockup wrt. rose_node_list_lock
Diffstat (limited to 'net/dccp')
-rw-r--r-- | net/dccp/probe.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/net/dccp/probe.c b/net/dccp/probe.c index 7053bb827bc8..6e1df62bd7c9 100644 --- a/net/dccp/probe.c +++ b/net/dccp/probe.c | |||
@@ -46,29 +46,24 @@ struct { | |||
46 | struct kfifo *fifo; | 46 | struct kfifo *fifo; |
47 | spinlock_t lock; | 47 | spinlock_t lock; |
48 | wait_queue_head_t wait; | 48 | wait_queue_head_t wait; |
49 | struct timeval tstart; | 49 | struct timespec tstart; |
50 | } dccpw; | 50 | } dccpw; |
51 | 51 | ||
52 | static void printl(const char *fmt, ...) | 52 | static void printl(const char *fmt, ...) |
53 | { | 53 | { |
54 | va_list args; | 54 | va_list args; |
55 | int len; | 55 | int len; |
56 | struct timeval now; | 56 | struct timespec now; |
57 | char tbuf[256]; | 57 | char tbuf[256]; |
58 | 58 | ||
59 | va_start(args, fmt); | 59 | va_start(args, fmt); |
60 | do_gettimeofday(&now); | 60 | getnstimeofday(&now); |
61 | 61 | ||
62 | now.tv_sec -= dccpw.tstart.tv_sec; | 62 | now = timespec_sub(now, dccpw.tstart); |
63 | now.tv_usec -= dccpw.tstart.tv_usec; | ||
64 | if (now.tv_usec < 0) { | ||
65 | --now.tv_sec; | ||
66 | now.tv_usec += 1000000; | ||
67 | } | ||
68 | 63 | ||
69 | len = sprintf(tbuf, "%lu.%06lu ", | 64 | len = sprintf(tbuf, "%lu.%06lu ", |
70 | (unsigned long) now.tv_sec, | 65 | (unsigned long) now.tv_sec, |
71 | (unsigned long) now.tv_usec); | 66 | (unsigned long) now.tv_nsec / NSEC_PER_USEC); |
72 | len += vscnprintf(tbuf+len, sizeof(tbuf)-len, fmt, args); | 67 | len += vscnprintf(tbuf+len, sizeof(tbuf)-len, fmt, args); |
73 | va_end(args); | 68 | va_end(args); |
74 | 69 | ||
@@ -119,7 +114,7 @@ static struct jprobe dccp_send_probe = { | |||
119 | static int dccpprobe_open(struct inode *inode, struct file *file) | 114 | static int dccpprobe_open(struct inode *inode, struct file *file) |
120 | { | 115 | { |
121 | kfifo_reset(dccpw.fifo); | 116 | kfifo_reset(dccpw.fifo); |
122 | do_gettimeofday(&dccpw.tstart); | 117 | getnstimeofday(&dccpw.tstart); |
123 | return 0; | 118 | return 0; |
124 | } | 119 | } |
125 | 120 | ||