io.buffer: add flush function