I think Todd is right, and this doesn't need to change.

Todd C. Miller <mill...@openbsd.org> wrote:

> On Sun, 12 Dec 2021 19:15:51 -0600, Scott Cheloha wrote:
> 
> > cat(1) sizes its I/O buffer according to the st_blksize of the first
> > file it processes.  We don't do this very often in the tree.  I'm not
> > sure if we should trust st_blksize.
> 
> It sizes the buffer based on st_blksize of stdout, not the input
> file.  Since st_blksize is the "optimal" blocksize for that device.
> Since cat only has a single output, the output buffer only needs
> to be sized once.
> 
> > It would be simpler to just choose a value that works in practice and
> > always use it.
> 
> I prefer it the way it is now.  By using st_blksize you get the
> proper block size regardless of whether output is to a pipe, a file
> or a tty.  I didn't suggest this for tee since it supports multiple
> output files.
> 
>  - todd
> 

Reply via email to