kernel/mem_pool: Correct n_levels computation for small blocks The new mem pool implementation has a hard minimum block size of 8 bytes, but the macros to statically compute the number of levels didn't clamp, leading to invalid small allocations being allowed, which would then corrupt the list pointers of nearby blocks and/or overflow the buffer entirely and corrupt other memory. Signed-off-by: Andy Ross <andrew.j.ross@intel.com>