A packet or streams layer for GENSEC/SASL?
David Collier-Brown
David.Collier-Brown at Sun.COM
Tue Feb 7 15:00:54 GMT 2006
Jeremy Allison wrote:
> Ah, I thought that might be the case. Yes, we take the
> client request size and only coalesce it if the write
> cache is enabled. "By design" I think is the answer here.
>
> Just one reason we can't deprecate the write cache code.
Once upon a time we discussed making it a VFS, as I
suspected it might only apply if the underlying filesystem
was sensitive to read/write sizes.
The degree of improvement with a single-disk system was
an argument against doing so..
Thus this possibility: Samba uses the size it thinks
best. For oplocked files, which have a high probability
of being read and written sequentially, Samba might
use a fairly large value. A user could request a different
size on a per-share basis.
For non-oplocked files, Samba might use a size that
it thinks is appropriate. A user could similarly set
it to known "good" values. My leaky memory says 4KB is
what Oracle like (;-))
Anyone need special handling, such as smaller sizes,
is free to write a VFS. For example, if one had a very
high-performance use, such as the video streamer that
exposed this problem, they could write a vfs that
uses forcedirectio and a specific read/write size,
thus avoiding the entire filesystem cache.
I suspect this would lead to a path where the write
cache code falls out of use and can be deprecated, and
to
- a possible simplification of the existing various-sizes
buffer code, and
- a general performance benefit if those buffers are being
allocated/reallocated often,
- reuse of common buffer code in many modules (gensec?).
--dave (in "cool algorithms lead to work avoidance" mode) c-b
--
David Collier-Brown, | Always do right. This will gratify
Sun Microsystems, Toronto | some people and astonish the rest
davecb at canada.sun.com | -- Mark Twain
(416) 263-5733 (x65733) |
More information about the samba-technical
mailing list