This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] libio: Always use _IO_BUFSIZE for stream buffers [BZ #4099]
- From: Florian Weimer <fweimer at redhat dot com>
- To: Roland McGrath <roland at hack dot frob dot com>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Thu, 31 Mar 2016 12:14:27 +0200
- Subject: Re: [PATCH] libio: Always use _IO_BUFSIZE for stream buffers [BZ #4099]
- Authentication-results: sourceware.org; auth=none
- References: <56E17C8E dot 1070209 at redhat dot com> <20160311215230 dot B5AF32C3C1E at topped-with-meat dot com> <56E69B9D dot 3000808 at redhat dot com> <20160318225258 dot 7D1852C3C60 at topped-with-meat dot com>
On 03/18/2016 11:52 PM, Roland McGrath wrote:
> Whatever the results, they would not IMHO be relevant here.
>
> POSIX specifies that st_blksize is the "preferred I/O block size for this
> object". It's the kernel's responsibility to give userland good advice
> through this channel. If there are common buggy kernels that give bad
> advice, that is a reason to apply upper and lower limits to the advice from
> the kernel. But the expectation should be that the kernel gets fixed to
> give good advice, and the optimal thing to do with a good kernel is to
> follow its advice.
>
> Since the recommended use of st_blksize in this way is a standard user
> feature and not just what stdio's implementation happens to do, there is an
> argument to be made that the limiting of the value should be done in the
> *stat functions reported st_blksize values rather than in stdio's use of
> them. (I'm ambivalent about this point.)
That's a good point. I'll try to get feedback from kernel file system
developers on this matter.
Thanks,
Florian