After digging a little deeper, it turns out that the kevent() call in
opal/event/kquene.c:
if (kevent(kq,
kqueueop->changes, 1, kqueueop->events, NEVENT, NULL) != 1 ||
(int)kqueueop->events[0].ident != master ||
kqueueop->events[0].flags != EV_ERROR) {
seems to hang in freebsd 7. Changing the NULL parameter to, lets say
1000, causes the function to return and print out the error message:
event_warn("%s: detected broken kqueue (failed delete); not using
error %d (%s)", __func__, errno, strerror(errno));
The simple non-blocking send/recv app used to test this then runs to
completion. Compiling OpenMPI on linux and running this same app
produces no errors.
Any ideas?
Thanks.
--
Karol