[PATCH] Add missing async fsync_send()/recv() code to ceph VFS.

Uri Simchoni uri at samba.org
Wed May 2 04:15:26 UTC 2018


On 05/02/2018 12:10 AM, Jeremy Allison wrote:
> On Tue, May 01, 2018 at 10:52:30PM +0300, Uri Simchoni wrote:
>> Hmm... if you can get rid of READ, that's great but do you really want
>> to get rid of PREAD/PWRITE?
>>
>> To quote your SambaXP performance talk [1], the best IO strategy
>> "Completely depends on available system resources" and on access patterns.
>>
>> Taking the "tweaking power" away from users/vendors might upset some people.
>>
>> [1]
>> https://sambaxp.org/archive_data/SambaXP2012-DATA/thu/track1/Jeremy_Allison-The-Evolution-of-IO.pdf
> 
> Well, I'm trying to simplify the VFS so that the
> primary access methods are async.
> 
> If you want sync you can always wrap the sync calls
> inside an async tevent wrapper - exactly how I did
> in the "fake" async fsync_send/fsync_recv I implemented
> for ceph (as far as I know, the ceph userspace library
> doesn't have async IO). That way, although the smbd
> code is making async calls, underneath the covers
> it's actually doing sync requests.

Fair enough - so we can keep "aio write size" and just tuck it into the
default VFS, or remove it and then restore it into the default VFS if
too many people complain :)



More information about the samba-technical mailing list