diff options
Diffstat (limited to 'net/ipv4/icmp.c')
-rw-r--r-- | net/ipv4/icmp.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/net/ipv4/icmp.c b/net/ipv4/icmp.c index fee171ec6588..c67d00e8c600 100644 --- a/net/ipv4/icmp.c +++ b/net/ipv4/icmp.c | |||
@@ -847,7 +847,7 @@ static void icmp_echo(struct sk_buff *skb) | |||
847 | */ | 847 | */ |
848 | static void icmp_timestamp(struct sk_buff *skb) | 848 | static void icmp_timestamp(struct sk_buff *skb) |
849 | { | 849 | { |
850 | struct timeval tv; | 850 | struct timespec tv; |
851 | struct icmp_bxm icmp_param; | 851 | struct icmp_bxm icmp_param; |
852 | /* | 852 | /* |
853 | * Too short. | 853 | * Too short. |
@@ -858,9 +858,9 @@ static void icmp_timestamp(struct sk_buff *skb) | |||
858 | /* | 858 | /* |
859 | * Fill in the current time as ms since midnight UT: | 859 | * Fill in the current time as ms since midnight UT: |
860 | */ | 860 | */ |
861 | do_gettimeofday(&tv); | 861 | getnstimeofday(&tv); |
862 | icmp_param.data.times[1] = htonl((tv.tv_sec % 86400) * 1000 + | 862 | icmp_param.data.times[1] = htonl((tv.tv_sec % 86400) * MSEC_PER_SEC + |
863 | tv.tv_usec / 1000); | 863 | tv.tv_nsec / NSEC_PER_MSEC); |
864 | icmp_param.data.times[2] = icmp_param.data.times[1]; | 864 | icmp_param.data.times[2] = icmp_param.data.times[1]; |
865 | if (skb_copy_bits(skb, 0, &icmp_param.data.times[0], 4)) | 865 | if (skb_copy_bits(skb, 0, &icmp_param.data.times[0], 4)) |
866 | BUG(); | 866 | BUG(); |