Hello Doug, * Doug Barton <dougb_at_FreeBSD.org> wrote: > I was trying to debug an unrelated problem today and noticed what > appear to be some console regressions. <snip> Got it. It turns out the bug is as follows: When changing the baud rate, it has to grow or shrink the TTY buffers. When it has to shrink the buffer, it doesn't actually free memory directly, but uses a lazy approach to deallocate buffers as data flows through the TTY. It also calculates a water mark, to determine when to unblock input/ output on a TTY after it had to block processes. This level is calculated by obtaining the TTY buffer sizes and using 10%. Because it uses the lazy approach, it uses the wrong buffer size to calculate the watermark, which means the watermark could be placed outside the TTY buffer size, causing processes to be never waked up. This could easily be demonstrated by running `pstat -t'. It should be fixed as of revision 198223. Thanks for reporting! -- Ed Schouten <ed_at_80386.nl> WWW: http://80386.nl/
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:57 UTC