Date: Mon, 9 Dec 1996 17:19:01 +1100 From: Bruce Evans <bde@zeta.org.au> To: bugs@freebsd.org Subject: bogus st_blksize for devices Message-ID: <199612090619.RAA18562@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
st_blksize is now 64K for ttys. It has been MAXBSIZE for all cdevs and BLKDEV_IOSIZE for most bdevs for a long time. This is sort of backwards - MAXBSIZE has to do with buffers but is only used for unbuffered devices. MAXBSIZE is now 64K, which is far too large for ttys. It was previously 16K, which is only 2-8 times too large (the tty output buffer size of 2K would be OK, and there is no reason to use a larger buffer than the default for file systems). BLKDEV_IOSIZE has been 2048 for a long time. It has been too small for 10-20 years, but is rarely used. Writing blocks of size 64K to a syscons console starves other processes. This is actually a bug in syscons. `dd if=/dev/zero bs=64k' has the same problem. dd with even larger block sizes takes minutes to complete. Fix for syscons: sleep in the output routine for block sizes much larger than one screen. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199612090619.RAA18562>