tail listens for eof