Fix clib_bitmap_next_clear() function when no clear bits left 60/13360/3
authorJohn Lo <loj@cisco.com>
Wed, 4 Jul 2018 20:27:59 +0000 (16:27 -0400)
committerDave Barach <openvpp@barachs.net>
Wed, 4 Jul 2018 23:53:48 +0000 (23:53 +0000)
commitef8db3679746792403589fb54fa0bbb9e13245dd
tree662c19509daa5a27d10f5cb53e372baab18f6b1d
parent64526229981143019ab81133c0b4fad9ab618ac9
Fix clib_bitmap_next_clear() function when no clear bits left

If the bitmap has no bit clear after the input bit position i,
the function will return i even if its bit is set.
Fix is to return the next bit just beyond the free bitmap.

This can cause IP neighbor scan crash in ip_neighbor_scan() with
a debug image. With production image, ip_neighbor_scan() may still
function, AFAICT, with extra neighbor delete attempts for entries
already deleted, until these entries are reused for new neighbors.

Change-Id: If6422ef6f63908ea39651de4ccbd8cb0b294bd69
Signed-off-by: John Lo <loj@cisco.com>
src/vppinfra/bitmap.h