forked from Minki/linux
ipv6: Expose reachable and retrans timer values as msecs
Expose reachable and retrans timer values in msecs instead of jiffies. Both timer values are already exposed as msecs in the neighbour table netlink interface. The creation timestamp format with increased precision is kept but cleaned up. Signed-off-by: Thomas Graf <tgraf@infradead.org> Cc: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
07bfa524d4
commit
18a31e1e28
@ -98,7 +98,11 @@
|
||||
#endif
|
||||
|
||||
#define INFINITY_LIFE_TIME 0xFFFFFFFF
|
||||
#define TIME_DELTA(a, b) ((unsigned long)((long)(a) - (long)(b)))
|
||||
|
||||
static inline u32 cstamp_delta(unsigned long cstamp)
|
||||
{
|
||||
return (cstamp - INITIAL_JIFFIES) * 100UL / HZ;
|
||||
}
|
||||
|
||||
#define ADDRCONF_TIMER_FUZZ_MINUS (HZ > 50 ? HZ/50 : 1)
|
||||
#define ADDRCONF_TIMER_FUZZ (HZ / 4)
|
||||
@ -3444,10 +3448,8 @@ static int put_cacheinfo(struct sk_buff *skb, unsigned long cstamp,
|
||||
{
|
||||
struct ifa_cacheinfo ci;
|
||||
|
||||
ci.cstamp = (u32)(TIME_DELTA(cstamp, INITIAL_JIFFIES) / HZ * 100
|
||||
+ TIME_DELTA(cstamp, INITIAL_JIFFIES) % HZ * 100 / HZ);
|
||||
ci.tstamp = (u32)(TIME_DELTA(tstamp, INITIAL_JIFFIES) / HZ * 100
|
||||
+ TIME_DELTA(tstamp, INITIAL_JIFFIES) % HZ * 100 / HZ);
|
||||
ci.cstamp = cstamp_delta(cstamp);
|
||||
ci.tstamp = cstamp_delta(tstamp);
|
||||
ci.ifa_prefered = preferred;
|
||||
ci.ifa_valid = valid;
|
||||
|
||||
@ -3932,10 +3934,9 @@ static int inet6_fill_ifinfo(struct sk_buff *skb, struct inet6_dev *idev,
|
||||
NLA_PUT_U32(skb, IFLA_INET6_FLAGS, idev->if_flags);
|
||||
|
||||
ci.max_reasm_len = IPV6_MAXPLEN;
|
||||
ci.tstamp = (__u32)(TIME_DELTA(idev->tstamp, INITIAL_JIFFIES) / HZ * 100
|
||||
+ TIME_DELTA(idev->tstamp, INITIAL_JIFFIES) % HZ * 100 / HZ);
|
||||
ci.reachable_time = idev->nd_parms->reachable_time;
|
||||
ci.retrans_time = idev->nd_parms->retrans_time;
|
||||
ci.tstamp = cstamp_delta(idev->tstamp);
|
||||
ci.reachable_time = jiffies_to_msecs(idev->nd_parms->reachable_time);
|
||||
ci.retrans_time = jiffies_to_msecs(idev->nd_parms->retrans_time);
|
||||
NLA_PUT(skb, IFLA_INET6_CACHEINFO, sizeof(ci), &ci);
|
||||
|
||||
nla = nla_reserve(skb, IFLA_INET6_CONF, DEVCONF_MAX * sizeof(s32));
|
||||
|
Loading…
Reference in New Issue
Block a user