inet_diag: use jiffies_delta_to_msecs()
authorEric Dumazet <edumazet@google.com>
Tue, 5 Nov 2019 22:11:50 +0000 (14:11 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 7 Nov 2019 00:14:48 +0000 (16:14 -0800)
Use jiffies_delta_to_msecs() to avoid reporting 'infinite'
timeouts and to cleanup code.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/inet_diag.c

index 7dc79b973e6edcc64e668e14c71c732ca1187e8f..af154977904c0c249e77e425990a09c62cca4251 100644 (file)
@@ -226,17 +226,17 @@ int inet_sk_diag_fill(struct sock *sk, struct inet_connection_sock *icsk,
                r->idiag_timer = 1;
                r->idiag_retrans = icsk->icsk_retransmits;
                r->idiag_expires =
-                       jiffies_to_msecs(icsk->icsk_timeout - jiffies);
+                       jiffies_delta_to_msecs(icsk->icsk_timeout - jiffies);
        } else if (icsk->icsk_pending == ICSK_TIME_PROBE0) {
                r->idiag_timer = 4;
                r->idiag_retrans = icsk->icsk_probes_out;
                r->idiag_expires =
-                       jiffies_to_msecs(icsk->icsk_timeout - jiffies);
+                       jiffies_delta_to_msecs(icsk->icsk_timeout - jiffies);
        } else if (timer_pending(&sk->sk_timer)) {
                r->idiag_timer = 2;
                r->idiag_retrans = icsk->icsk_probes_out;
                r->idiag_expires =
-                       jiffies_to_msecs(sk->sk_timer.expires - jiffies);
+                       jiffies_delta_to_msecs(sk->sk_timer.expires - jiffies);
        } else {
                r->idiag_timer = 0;
                r->idiag_expires = 0;
@@ -342,16 +342,13 @@ static int inet_twsk_diag_fill(struct sock *sk,
        r = nlmsg_data(nlh);
        BUG_ON(tw->tw_state != TCP_TIME_WAIT);
 
-       tmo = tw->tw_timer.expires - jiffies;
-       if (tmo < 0)
-               tmo = 0;
-
        inet_diag_msg_common_fill(r, sk);
        r->idiag_retrans      = 0;
 
        r->idiag_state        = tw->tw_substate;
        r->idiag_timer        = 3;
-       r->idiag_expires      = jiffies_to_msecs(tmo);
+       tmo = tw->tw_timer.expires - jiffies;
+       r->idiag_expires      = jiffies_delta_to_msecs(tmo);
        r->idiag_rqueue       = 0;
        r->idiag_wqueue       = 0;
        r->idiag_uid          = 0;
@@ -385,7 +382,7 @@ static int inet_req_diag_fill(struct sock *sk, struct sk_buff *skb,
                     offsetof(struct sock, sk_cookie));
 
        tmo = inet_reqsk(sk)->rsk_timer.expires - jiffies;
-       r->idiag_expires = (tmo >= 0) ? jiffies_to_msecs(tmo) : 0;
+       r->idiag_expires = jiffies_delta_to_msecs(tmo);
        r->idiag_rqueue = 0;
        r->idiag_wqueue = 0;
        r->idiag_uid    = 0;