johnc@rtmvax.UUCP (John Connin) (07/28/88)
I finally decided to give Minix's serial communications a whirl and quickly found that it (updated to V1.3b) is missing characters at 1200. To make a long story short, I decide to roll up my sleeves and investigate. By accident I discovered that for every TTY read completion (console or rs232), a get_time message is being set to the clock task. In other words, a simple <enter> at the command prompt will cause a get_time message to be generated. If my 1.3b update is correct, the source of the get_time messages is the following code fragment from fs/read.c beginning on or about line 153. if (rw_flag == WRITING) { if (char_spec == 0 && block_spec == 0 && position > f_size) rip->i_size = position; rip->i_modtime = clock_time(); <<<<<<< rip->i_dirt = DIRTY; } which I changed as follows: if (rw_flag == WRITING) { if (char_spec == 0 && block_spec == 0 && position > f_size) { rip->i_size = position; rip->i_modtime = clock_time(); rip->i_dirt = DIRTY; } } Lacking confidence at this point, I would be appreciative of any and all second opinions regarding this change. Does my original code conform to version 1.3b? Are there any undesireable side-effects resulting from the above change? etc... BTW: Though the above change makes an improvement, I am still missing characters at 1200 baud.