Fixed showing negative count in stats show CLI 37/14637/2
authorNaoyuki Mori <naoyuki.mori@intel.com>
Tue, 4 Sep 2018 01:36:54 +0000 (10:36 +0900)
committerNaoyuki Mori <naoyuki.mori@intel.com>
Tue, 4 Sep 2018 10:17:41 +0000 (19:17 +0900)
Some counters (bytes, pkts) are formatted as signed instead of unsigned
in "show hardware-interfaces" and "show lb".
These stats counters are declared as u64.

Change-Id: Id1b588188bff4e36402beb8d07f779e9a5193956
Signed-off-by: Naoyuki Mori <naoyuki.mori@intel.com>
src/plugins/dpdk/device/format.c
src/plugins/lb/lb.c

index be82893..70306a8 100644 (file)
@@ -593,7 +593,7 @@ format_dpdk_device (u8 * s, va_list * args)
   {
 #define _(N, V)                                                        \
     if ((xd->stats.V - xd->last_cleared_stats.V) != 0) {       \
-      s = format (s, "\n%U%-40U%16Ld",                         \
+      s = format (s, "\n%U%-40U%16Lu",                         \
                   format_white_space, indent + 2,              \
                   format_c_identifier, #N,                     \
                   xd->stats.V - xd->last_cleared_stats.V);     \
@@ -625,7 +625,7 @@ format_dpdk_device (u8 * s, va_list * args)
         {
           /* format_c_identifier doesn't like c strings inside vector */
           u8 * name = format(0,"%s", xstat_names[i].name);
-          xs = format(xs, "\n%U%-38U%16Ld",
+          xs = format(xs, "\n%U%-38U%16Lu",
                       format_white_space, indent + 4,
                       format_c_identifier, name, delta);
           vec_free(name);
index fb62c21..041c65c 100644 (file)
@@ -232,7 +232,7 @@ u8 *format_lb_vip_detailed (u8 * s, va_list * args)
              format_white_space, indent);
   u32 i;
   for (i=0; i<LB_N_VIP_COUNTERS; i++)
-    s = format(s, "%U    %s: %d\n",
+    s = format(s, "%U    %s: %Lu\n",
                format_white_space, indent,
                lbm->vip_counters[i].name,
                vlib_get_simple_counter(&lbm->vip_counters[i], vip - lbm->vips));
@@ -253,7 +253,7 @@ u8 *format_lb_vip_detailed (u8 * s, va_list * args)
   u32 *as_index;
   pool_foreach(as_index, vip->as_indexes, {
       as = &lbm->ass[*as_index];
-      s = format(s, "%U    %U %d buckets   %d flows  dpo:%u %s\n",
+      s = format(s, "%U    %U %u buckets   %Lu flows  dpo:%u %s\n",
                    format_white_space, indent,
                    format_ip46_address, &as->address, IP46_TYPE_ANY,
                    count[as - lbm->ass],