2c02294389
OPAL free lists can be initialized with a fragment size that differs from the size of objects from a class. This allows the free list code to support OPAL objects that have flexible array members. Unfortunately the free list code will throw out the desired length in some cases. The code in question was committed in open-mpi/ompi@90fb58de. The side effects of this are varied and can cause segmentation faults, assert failures, hangs, etc. This commit adds a check to ensure the requested size is at least as large as the class size and makes opal_free_list allocations always honor the requested fragment size (as long as it is larger than the class size). Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>