OSDN Git Service

net: ipv4: tcp_probe: Replace timespec with timespec64
authorDeepa Dinamani <deepa.kernel@gmail.com>
Sat, 27 Feb 2016 08:32:16 +0000 (00:32 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 1 Mar 2016 22:18:44 +0000 (17:18 -0500)
TCP probe log timestamps use struct timespec which is
not y2038 safe. Even though timespec might be good enough here
as it is used to represent delta time, the plan is to get rid
of all uses of timespec in the kernel.
Replace with struct timespec64 which is y2038 safe.

Prints still use unsigned long format and type.

Signed-off-by: Deepa Dinamani <deepa.kernel@gmail.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
Cc: James Morris <jmorris@namei.org>
Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
Cc: Patrick McHardy <kaber@trash.net>
Acked-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp_probe.c

index ebf5ff5..f6c50af 100644 (file)
@@ -187,13 +187,13 @@ static int tcpprobe_sprint(char *tbuf, int n)
 {
        const struct tcp_log *p
                = tcp_probe.log + tcp_probe.tail;
-       struct timespec tv
-               = ktime_to_timespec(ktime_sub(p->tstamp, tcp_probe.start));
+       struct timespec64 ts
+               = ktime_to_timespec64(ktime_sub(p->tstamp, tcp_probe.start));
 
        return scnprintf(tbuf, n,
                        "%lu.%09lu %pISpc %pISpc %d %#x %#x %u %u %u %u %u\n",
-                       (unsigned long)tv.tv_sec,
-                       (unsigned long)tv.tv_nsec,
+                       (unsigned long)ts.tv_sec,
+                       (unsigned long)ts.tv_nsec,
                        &p->src, &p->dst, p->length, p->snd_nxt, p->snd_una,
                        p->snd_cwnd, p->ssthresh, p->snd_wnd, p->srtt, p->rcv_wnd);
 }