diff options
author | Bartosz Golaszewski <bartekgola@gmail.com> | 2014-06-22 14:01:13 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2014-06-22 14:01:13 +0200 |
commit | 5d2e409ef8224dc32fde59702e8ec90b231441ed (patch) | |
tree | 1d73d4a99a495ba57bc5be8878dce3cefbb99e9f | |
parent | f92f1d0181853b989f9377debb56902e3e21c9a8 (diff) | |
download | busybox-5d2e409ef8224dc32fde59702e8ec90b231441ed.tar.gz |
libbb: use a wrapper around sysconf(_SC_CLK_TCK) to save a few bytes
function old new delta
bb_sc_clk_tck - 10 +10
timescmd 118 113 -5
print_route 1763 1758 -5
mpstat_main 1288 1283 -5
iostat_main 1947 1942 -5
INET_setroute 879 871 -8
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/5 up/down: 10/-28) Total: -18 bytes
Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | include/libbb.h | 1 | ||||
-rw-r--r-- | libbb/sysconf.c | 6 | ||||
-rw-r--r-- | networking/libiproute/iproute.c | 2 | ||||
-rw-r--r-- | networking/route.c | 2 | ||||
-rw-r--r-- | procps/iostat.c | 7 | ||||
-rw-r--r-- | procps/mpstat.c | 8 | ||||
-rw-r--r-- | shell/ash.c | 2 |
7 files changed, 12 insertions, 16 deletions
diff --git a/include/libbb.h b/include/libbb.h index fa69a7fe6..7a3610bb9 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -738,6 +738,7 @@ unsigned bb_arg_max(void) FAST_FUNC; #else # define bb_arg_max() ((unsigned)(32 * 1024)) #endif +unsigned bb_clk_tck(void) FAST_FUNC; #define SEAMLESS_COMPRESSION (0 \ || ENABLE_FEATURE_SEAMLESS_XZ \ diff --git a/libbb/sysconf.c b/libbb/sysconf.c index c5fa5e001..4dbffbebd 100644 --- a/libbb/sysconf.c +++ b/libbb/sysconf.c @@ -14,3 +14,9 @@ unsigned FAST_FUNC bb_arg_max(void) return sysconf(_SC_ARG_MAX); } #endif + +/* Return the number of clock ticks per second. */ +unsigned FAST_FUNC bb_clk_tck(void) +{ + return sysconf(_SC_CLK_TCK); +} diff --git a/networking/libiproute/iproute.c b/networking/libiproute/iproute.c index f8a67d9ee..ec4d8ba03 100644 --- a/networking/libiproute/iproute.c +++ b/networking/libiproute/iproute.c @@ -73,7 +73,7 @@ static unsigned get_hz(void) fclose(fp); } if (!hz_internal) - hz_internal = sysconf(_SC_CLK_TCK); + hz_internal = bb_clk_tck(); return hz_internal; } diff --git a/networking/route.c b/networking/route.c index 4235ea72c..24cc2eb5a 100644 --- a/networking/route.c +++ b/networking/route.c @@ -283,7 +283,7 @@ static NOINLINE void INET_setroute(int action, char **args) if (k == KW_IPVx_IRTT) { rt->rt_flags |= RTF_IRTT; rt->rt_irtt = xatoul(args_m1); - rt->rt_irtt *= (sysconf(_SC_CLK_TCK) / 100); /* FIXME */ + rt->rt_irtt *= (bb_clk_tck() / 100); /* FIXME */ #if 0 /* FIXME: do we need to check anything of this? */ if (rt->rt_irtt < 1 || rt->rt_irtt > (120 * HZ)) { bb_error_msg_and_die("bad irtt"); diff --git a/procps/iostat.c b/procps/iostat.c index 978d23430..8d272c87c 100644 --- a/procps/iostat.c +++ b/procps/iostat.c @@ -109,11 +109,6 @@ enum { OPT_m = 1 << 5, }; -static ALWAYS_INLINE unsigned get_user_hz(void) -{ - return sysconf(_SC_CLK_TCK); -} - static ALWAYS_INLINE int this_is_smp(void) { return (G.total_cpus > 1); @@ -414,7 +409,7 @@ int iostat_main(int argc UNUSED_PARAM, char **argv) memset(&stats_data, 0, sizeof(stats_data)); /* Get number of clock ticks per sec */ - G.clk_tck = get_user_hz(); + G.clk_tck = bb_clk_tck(); /* Determine number of CPUs */ G.total_cpus = get_cpu_count(); diff --git a/procps/mpstat.c b/procps/mpstat.c index aa5a5c73f..c628d6215 100644 --- a/procps/mpstat.c +++ b/procps/mpstat.c @@ -775,12 +775,6 @@ static void main_loop(void) /* Initialization */ -/* Get number of clock ticks per sec */ -static ALWAYS_INLINE unsigned get_hz(void) -{ - return sysconf(_SC_CLK_TCK); -} - static void alloc_struct(int cpus) { int i; @@ -873,7 +867,7 @@ int mpstat_main(int UNUSED_PARAM argc, char **argv) G.cpu_nr = get_cpu_count(); /* Get number of clock ticks per sec */ - G.hz = get_hz(); + G.hz = bb_clk_tck(); /* Calculate number of interrupts per processor */ G.irqcpu_nr = get_irqcpu_nr(PROCFS_INTERRUPTS, NR_IRQS) + NR_IRQCPU_PREALLOC; diff --git a/shell/ash.c b/shell/ash.c index cabeb40c5..dc7a9bf4f 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -12759,7 +12759,7 @@ timescmd(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) const unsigned char *p; struct tms buf; - clk_tck = sysconf(_SC_CLK_TCK); + clk_tck = bb_clk_tck(); times(&buf); p = timescmd_str; |