Well, we can propose in this function, but we cannot queue the message to be retried once the osdmon becomes writeable (because we don't have the message).  But yeah, we can take care of things here and return EAGAIN if we need them to retry the message -- 'cluster_fail()' OTOH simply returns EAGAIN to the user, which seems a bit to optimistic (hoping the user will send a command at just the right time so it can go through; unless I'm missing something).