diff options
author | Damjan Marion <damarion@cisco.com> | 2016-02-05 23:33:21 +0100 |
---|---|---|
committer | Damjan Marion <damarion@cisco.com> | 2016-02-11 15:02:33 +0000 |
commit | 14a44d37a36d1f62897aa304922cea568ce1b577 (patch) | |
tree | 9e9e28a009fdca1b5c47ec061e7e25e33731ed5a /vppinfra | |
parent | 40223daf5ed332032ed9dbca06a35864575d3595 (diff) |
Use vppinfra bitmap for dpdk coremask
Change-Id: Iec5ebadf120f742f43a681c4d394aa97ad2ae1e1
Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'vppinfra')
-rw-r--r-- | vppinfra/vppinfra/bitmap.h | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/vppinfra/vppinfra/bitmap.h b/vppinfra/vppinfra/bitmap.h index d8fd1542ffa..e69851b60be 100644 --- a/vppinfra/vppinfra/bitmap.h +++ b/vppinfra/vppinfra/bitmap.h @@ -542,7 +542,7 @@ unformat_bitmap_list(unformat_input_t * input, va_list * va) else goto error; - if ((b < a) || (b > 63)) + if (b < a) goto error; for (i = a; i <= b; i++) @@ -555,4 +555,27 @@ error: return 0; } +static inline u8 * +format_bitmap_hex(u8 * s, va_list * args) +{ + uword * bitmap = va_arg (*args, uword *); + int i, is_trailing_zero = 1; + + if (!bitmap) + return format(s, "0"); + + i = vec_bytes (bitmap) * 2; + + while (i > 0) + { + u8 x = clib_bitmap_get_multiple(bitmap, --i * 4, 4); + + if (x && is_trailing_zero) + is_trailing_zero = 0; + + if (x || !is_trailing_zero) + s = format(s, "%x", x); + } + return s; +} #endif /* included_clib_bitmap_h */ |