should we? I was thinking that we should continue polling until EP is successfully started (until we get a valid fd)
btw, think we'd better to use G_SOURCE_CONTINUE  / G_SOURCE_REMOVE instead of true/false to improve code readability.