vppinfra: fix OOM check in bihash 39/20739/2
authorAndreas Schultz <andreas.schultz@travelping.com>
Fri, 19 Jul 2019 09:14:50 +0000 (11:14 +0200)
committerDave Barach <openvpp@barachs.net>
Fri, 19 Jul 2019 14:29:39 +0000 (14:29 +0000)
The OOM check must consider the end of alloced arena and
not the start when checking for overflow.

Type: fix
Change-Id: Ie83e653d0894199d2fa433a604a0fe0cee142338
Signed-off-by: Andreas Schultz <andreas.schultz@travelping.com>
src/vppinfra/bihash_template.c

index cd75a7a..11e3ac4 100644 (file)
@@ -26,7 +26,7 @@ static inline void *BV (alloc_aligned) (BVT (clib_bihash) * h, uword nbytes)
   rv = alloc_arena_next (h);
   alloc_arena_next (h) += nbytes;
 
-  if (rv >= alloc_arena_size (h))
+  if (alloc_arena_next (h) > alloc_arena_size (h))
     os_out_of_memory ();
 
   return (void *) (uword) (rv + alloc_arena (h));