select non-blocking: still debugging