[Samba] Samba and BTRFS server-side copy
Saint Germain
saintger at gmail.com
Wed Nov 2 02:05:30 UTC 2016
On Fri, 28 Oct 2016 19:10:12 +0200, Achim Gottinger via samba
<samba at lists.samba.org> wrote :
>
>
> Am 28.10.2016 um 08:18 schrieb Saint Germain via samba:
> > On Thu, 27 Oct 2016 17:30:09 -0700, Jeremy Allison <jra at samba.org>
> > wrote :
> >
> >> On Thu, Oct 27, 2016 at 05:22:14PM -0700, Jeremy Allison via samba
> >> wrote:
> >>> Looking around inside that source code I also see:
> >>>
> >>> do_read (GVfsBackend *backend,
> >>> GVfsJobRead *job,
> >>> GVfsBackendHandle handle,
> >>> char *buffer,
> >>> gsize bytes_requested)
> >>> {
> >>> GVfsBackendSmb *op_backend = G_VFS_BACKEND_SMB (backend);
> >>> ssize_t res;
> >>> smbc_read_fn smbc_read;
> >>>
> >>> /* libsmbclient limits blocksize to (64*1024)-2 for Windows
> >>> servers,
> >>> * let's do the same here to achieve reasonable performance.
> >>> (#588391) *
> >>> * TODO: port to pull mechanism (#592468)
> >>> */
> >>> if (bytes_requested > 65534)
> >>> bytes_requested = 65534;
> >>>
> >>> smbc_read = smbc_getFunctionRead (op_backend->smb_context);
> >>> res = smbc_read (op_backend->smb_context, (SMBCFILE *)handle,
> >>> buffer, bytes_requested);
> >>>
> >>> which is also completely broken and wrong. The read call
> >>> can take any arbitrary size and the both the libsmbclient
> >>> SMB1 and SMB2 engines will break this down into as many
> >>> simultaneous on the wire calls as needed to pipeline
> >>> the reads / writes.
> >>>
> >>> Restricting this to 65534 is *insane* and slow. That
> >>> whole chunk of code restricting the size needs to be
> >>> removed.
> >> Oh it's my fault from 2009:
> >>
> >> https://bugzilla.gnome.org/show_bug.cgi?id=588391#c10
> >>
> >> :-).
> >>
> >> I'll log another bug to get the whole thing removed
> >> now we pipeline correctly.
> > I just tried and when I limit samba to SMB2 connections (in
> > smb.conf), Nautilus/gvfs cannot connect (it doesn't even see the
> > share).
> >
> > I also tried starting a discussion on the topic yesterday:
> > https://mail.gnome.org/archives/gvfs-list/2016-October/msg00000.html
> >
> > It seems that Ross Lagerwall started working on the topic a while
> > ago, but I don't know when/how the code will be included.
> >
> > Thanks for your help !
> >
> gvfs connects with smb2 here with these settings on the client's
> smb.conf
>
> client max protocol = SMB2_10
> client min protocol = SMB2_10
>
With these lines, my gvfs connect but with protocol SMB1 (confirmed
with smbstatus -b).
Which version of samba on the server are you using ?
Which version of libsmbclient and gvfs on the client are you using ?
Thanks
More information about the samba
mailing list