Not sure if this makes sense to someone, but just in case...<br>I started corosync and pacemaker, mounted the GFS2 filesystem, started a "strace" on the dlm_controld.pcmk process and executed a pinp_pong test. Result: function not implemented<br>
Then I unmounted it, stopped pacemaker and corosync, started cman, mounted the filesystem again, started an "strace" on dlm_controld and executed a ping_pong test. Result: the number of locks/s was displayed.<br>
<br>Here is a piece of the strace output on each case (the complete output was just a lot of lines similar to these ones):<br><br>The interestign part is that while the "read" operation looks pretty much the same with both control daemons, the "write" that follows is quite different.<br>
Also the call to "poll" has different parameters at the end, in the pacemaker one it says (...., 8, -1) while in the cman one says (...., 7, 1000)<br><br><br><br>PACEMAKER (strace on dlm_controld.pcmk. Ping_pong failed with "function not implemented"):<br>
<br>poll([{fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=11, events=POLLIN}, {fd=12, events=POLLIN}, {fd=14, events=POLLIN}, {fd=15, events=POLLIN}, {fd=17, events=POLLIN}, {fd=18, events=POLLIN}], 8, -1) = 1 ([{fd=14, revents=POLLIN}])<br>
read(14, "\1\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\313\v\0\0\0\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>write(14, "\1\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\313\v\0\0\300\250\1\3\332\377\377\377\331\255gP"..., 64) = 64<br>
poll([{fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=11, events=POLLIN}, {fd=12, events=POLLIN}, {fd=14, events=POLLIN}, {fd=15, events=POLLIN}, {fd=17, events=POLLIN}, {fd=18, events=POLLIN}], 8, -1) = 1 ([{fd=14, revents=POLLIN}])<br>
read(14, "\1\0\0\0\2\0\0\0\0\0\0\0\1\1\1\0\313\v\0\0\0\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>write(14, "\1\0\0\0\2\0\0\0\0\0\0\0\1\1\1\0\313\v\0\0\300\250\1\3\332\377\377\377\331\255gP"..., 64) = 64<br>
poll([{fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=11, events=POLLIN}, {fd=12, events=POLLIN}, {fd=14, events=POLLIN}, {fd=15, events=POLLIN}, {fd=17, events=POLLIN}, {fd=18, events=POLLIN}], 8, -1) = 1 ([{fd=14, revents=POLLIN}])<br>
read(14, "\1\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\313\v\0\0\0\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>write(14, "\1\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\313\v\0\0\300\250\1\3\332\377\377\377\331\255gP"..., 64) = 64<br>
<br><br><br>CMAN (strace on dlm_controld. Ping_pong was succesfull):<br><br>poll([{fd=5, events=POLLIN}, {fd=8, events=POLLIN}, {fd=13, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 7, 1000) = 1 ([{fd=16, revents=POLLIN}])<br>
read(16, "\1\0\0\0\2\0\0\0\0\0\0\0\1\1\1\0\234\r\0\0\0\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>write(16, "\1\0\0\0\2\0\0\0\0\0\0\0\1\1\1\0\234\r\0\0\1\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>poll([{fd=5, events=POLLIN}, {fd=8, events=POLLIN}, {fd=13, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 7, 1000) = 1 ([{fd=16, revents=POLLIN}])<br>
read(16, "\1\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\234\r\0\0\0\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>write(16, "\1\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\234\r\0\0\1\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>poll([{fd=5, events=POLLIN}, {fd=8, events=POLLIN}, {fd=13, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=18, events=POLLIN}, {fd=19, events=POLLIN}], 7, 1000) = 1 ([{fd=16, revents=POLLIN}])<br>
read(16, "\1\0\0\0\2\0\0\0\0\0\0\0\1\1\1\0\234\r\0\0\0\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br>write(16, "\1\0\0\0\2\0\0\0\0\0\0\0\1\1\1\0\234\r\0\0\1\0\0\0\0\0\0\0\331\255gP"..., 64) = 64<br clear="all">
<br>