The pointer named tx_block_pool_created_ptr points to the first Control Block in the list. See the fields in the Block Pool Control Block for block pool attributes, values, and other pointers.
As noted earlier, block pools contain fixed-size blocks of memory. The advantages of this approach include fast allocation and release of blocks, and no fragmentation issues. One possible disadvantage is that space could be wasted if the block size is too large. However, developers can minimize this potential problem by creating several block pools with different block sizes. Each block in the pool entails a small amount of overhead, i.e., an owner pointer and a next block pointer. Figure 8.23 illustrates the organization of a memory block pool.