Comment 3 for bug 176299

Revision history for this message
In , Fabio (fabio-redhat-bugs) wrote :

Description of problem:

exec/totem.h defines INTERFACE_MAX to 2. This is very limiting and it is not
coherent with the rest of the cluster stack.

openais limits to 2
kernel dlm to 3
dlm_controld to 4

Those values should be at least alligned to 4 or higher.

In theory a dynamic allocation here would be the winner.

with the default set to 2, configuring 3 rings in openais.conf (passive mode,
since active it totally broken), will lead openais to crash because of memory
corruption (there is no protection within the code to try to init and config
only INTERFACE_MAX).

Version-Release number of selected component (if applicable):

trunk

How reproducible:

always

Steps to Reproduce:
1. given default svn checkout
2. configure INTERFACE_MAX + 1 rings in passive mode
3. fire up aisexec.

(tested on amd64 with glibc-2.7 will report memory corruption detected by glibc)

Actual results:

aisexec crashes and dies.

Expected results:

should work no matter how many rings i configure. hardcoded limitations are bad
and it is not even documented.

Additional info: