Add code from cetus.

The old code is from vesta, now we need to add to cetus

Signed-off-by: Huy Bui <anhhuybk@gmail.com>
Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
set CONFIG_PAMI=y on Blue Gene/Q to build pami_transport

Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
Some coding convention for if and for.

Signed-off-by: Huy Bui <anhhuybk@gmail.com>
Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
thorium_ prefix and more indent issues fixed

Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
Fixing the bug of memory corruption by preallocate 4Mx128 and 4Kx4K buffers.

The bug is because when messages come too fast, the pami transport layer
starts to use the memory that haven't been processed yet. Making the new
content overwritten the old content.

Signed-off-by: Huy Bui <huybui@anl.gov>
Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
Added the capability of allocating mem dynamically

Allocated memory at the beginning for incoming messages. But if the
preallocate memory is used up, then allocate more memory dynamically.

Signed-off-by: Huy Bui <huybui@anl.gov>
Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
Fixed another memory bug.

Not allocate memory for avail_small_buffers and avail_large_buffers.

Signed-off-by: Huy Bui <huybui@anl.gov>
Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
Fixed the bug of the memory corruption.

It is because when return memory back to the pool, small message is
less than RECV_BUFFER_SIZE_SMALL(4K) not MAX_SHORT_MESSAGE_LENGTH(128bytes).
Because of wrong size, the receive function returned messages with sizes
between 128 bytes and 4K  to the large buffer pool while they should have
been returned to small buffer pool.

Signed-off-by: Huy Bui <huybui@anl.gov>
Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
Code is able to pass the read and distribute data.

Failed after distributing data.

Signed-off-by: Huy Bui <huybui@anl.gov>
Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>
add a script to build with PAMI

Signed-off-by: Sébastien Boisvert <boisvert@anl.gov>