aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartekgola@gmail.com>2014-06-22 14:01:13 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2014-06-22 14:01:13 +0200
commit5d2e409ef8224dc32fde59702e8ec90b231441ed (patch)
tree1d73d4a99a495ba57bc5be8878dce3cefbb99e9f
parentf92f1d0181853b989f9377debb56902e3e21c9a8 (diff)
downloadbusybox-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.h1
-rw-r--r--libbb/sysconf.c6
-rw-r--r--networking/libiproute/iproute.c2
-rw-r--r--networking/route.c2
-rw-r--r--procps/iostat.c7
-rw-r--r--procps/mpstat.c8
-rw-r--r--shell/ash.c2
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;