diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2020-12-30 23:48:01 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2020-12-30 23:48:01 +0100 |
commit | 3c13da3dab539eac948de48640d8862857d0c8d0 (patch) | |
tree | 9cf3ae59b79ca89cbcfe08ce6b2b121f37d54a66 /procps | |
parent | 89a55972fd5d7f0ab815c2a62be69a8f34718353 (diff) | |
download | busybox-w32-3c13da3dab539eac948de48640d8862857d0c8d0.tar.gz busybox-w32-3c13da3dab539eac948de48640d8862857d0c8d0.tar.bz2 busybox-w32-3c13da3dab539eac948de48640d8862857d0c8d0.zip |
libbb: introduce and use xgettimeofday(), do not truncate 64-bit time_t in shells
function old new delta
xgettimeofday - 11 +11
get_local_var_value 280 281 +1
svlogd_main 1323 1322 -1
change_epoch 67 66 -1
timestamp_and_log 461 458 -3
hwclock_main 301 298 -3
fmt_time_bernstein_25 135 132 -3
step_time 331 326 -5
script_main 1207 1202 -5
machtime 34 28 -6
curtime 61 54 -7
ts_main 423 415 -8
nmeter_main 761 751 -10
gettime1900d 67 46 -21
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/12 up/down: 12/-73) Total: -61 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'procps')
-rw-r--r-- | procps/nmeter.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/procps/nmeter.c b/procps/nmeter.c index 07b7abe2f..f08938654 100644 --- a/procps/nmeter.c +++ b/procps/nmeter.c | |||
@@ -952,11 +952,11 @@ int nmeter_main(int argc UNUSED_PARAM, char **argv) | |||
952 | reset_outbuf(); | 952 | reset_outbuf(); |
953 | 953 | ||
954 | if (G.delta >= 0) { | 954 | if (G.delta >= 0) { |
955 | gettimeofday(&G.tv, NULL); | 955 | xgettimeofday(&G.tv); |
956 | usleep(G.delta > 1000000 ? 1000000 : G.delta - G.tv.tv_usec % G.deltanz); | 956 | usleep(G.delta > 1000000 ? 1000000 : G.delta - G.tv.tv_usec % G.deltanz); |
957 | } | 957 | } |
958 | 958 | ||
959 | gettimeofday(&G.start, NULL); | 959 | xgettimeofday(&G.start); |
960 | G.tv = G.start; | 960 | G.tv = G.start; |
961 | while (1) { | 961 | while (1) { |
962 | collect_info(first); | 962 | collect_info(first); |
@@ -971,7 +971,7 @@ int nmeter_main(int argc UNUSED_PARAM, char **argv) | |||
971 | if (G.delta >= 0) { | 971 | if (G.delta >= 0) { |
972 | int rem; | 972 | int rem; |
973 | // can be commented out, will sacrifice sleep time precision a bit | 973 | // can be commented out, will sacrifice sleep time precision a bit |
974 | gettimeofday(&G.tv, NULL); | 974 | xgettimeofday(&G.tv); |
975 | if (need_seconds) | 975 | if (need_seconds) |
976 | rem = G.delta - ((ullong)G.tv.tv_sec*1000000 + G.tv.tv_usec) % G.deltanz; | 976 | rem = G.delta - ((ullong)G.tv.tv_sec*1000000 + G.tv.tv_usec) % G.deltanz; |
977 | else | 977 | else |
@@ -983,7 +983,7 @@ int nmeter_main(int argc UNUSED_PARAM, char **argv) | |||
983 | } | 983 | } |
984 | usleep(rem); | 984 | usleep(rem); |
985 | } | 985 | } |
986 | gettimeofday(&G.tv, NULL); | 986 | xgettimeofday(&G.tv); |
987 | } | 987 | } |
988 | 988 | ||
989 | /*return 0;*/ | 989 | /*return 0;*/ |