> However, whatever policy the buffer uses, the fundamental point it's that > when I flush the input buffer I should be sure that each byte read > after the flush is *new* (current) data and not old one. This because
Define "new" and "old" in this case. I don't believe you can give a precise definition or that such a thing is physically possible. > when the input stream can be stopped I can check that there are 0 byte > in the buffer, but when the stream can't be stopped I must use a > flush-and-sleep (multiple times) heuristic before I can read a single > *reliable* byte. The hardware itself has buffers at both ends of the link, there may be buffers in modems, muxes and the like as well. We can certainly flush input buffers in the kernel but it isn't clear we can always do so at the hardware level, let alone at the remote end or buffers on devices on the link. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/