[PATCH] Avoid deliberate cleanup when sendfile is not supported

Michael Adam obnox at samba.org
Tue Jan 10 22:52:14 UTC 2017


On 2017-01-10 at 10:38 -0800, Jeremy Allison wrote:
> On Tue, Jan 10, 2017 at 07:56:35PM +0530, Anoop C S wrote:
> > Hi,
> > 
> > Please find the attached patch which handles ENOTSUP when 'use sendfile' is incorrectly configured
> > for a particular share.
> > 
> > Tested the patch with vfs_glusterfs module and could confirm that this change avoids the
> > server_cleanup and the resulting error from Windows client (Win 8.1).
> 
> LGTM. Reviewed-by: Jeremy Allison <jra at samba.org>
> 
> Michael, Guenther - are you OK with me pushing this ?

Certainly!

It (c/s)hould carry my signed-off by.

Thanks - Michael



> > From 2941f3a303759bfe480335c5d7a9a2d0f5784823 Mon Sep 17 00:00:00 2001
> > From: Anoop C S <anoopcs at redhat.com>
> > Date: Tue, 10 Jan 2017 13:30:30 +0000
> > Subject: [PATCH] s3/smb2_read: Better fallback for incorrectly configured
> >  sendfile setups
> > 
> > When "use sendfile" is enabled but not supported by the underlying VFS
> > module then fallback to normal copy and print out a warning for the
> > admin.
> > 
> > Pair-Programmed-With: Guenther Deschner <gd at samba.org>
> > Pair-Programmed-With: Michael Adam <obnox at samba.org>
> > Signed-off-by: Anoop C S <anoopcs at redhat.com>
> > ---
> >  source3/smbd/smb2_read.c | 7 +++++++
> >  1 file changed, 7 insertions(+)
> > 
> > diff --git a/source3/smbd/smb2_read.c b/source3/smbd/smb2_read.c
> > index 89527f3..1c85840 100644
> > --- a/source3/smbd/smb2_read.c
> > +++ b/source3/smbd/smb2_read.c
> > @@ -221,6 +221,13 @@ static int smb2_sendfile_send_data(struct smbd_smb2_read_state *state)
> >  			goto normal_read;
> >  		}
> >  
> > +		if (errno == ENOTSUP) {
> > +			set_use_sendfile(SNUM(fsp->conn), false);
> > +			DBG_WARNING("Disabling sendfile use as sendfile is "
> > +				    "not supported by the system\n");
> > +			goto normal_read;
> > +		}
> > +
> >  		if (errno == EINTR) {
> >  			/*
> >  			 * Special hack for broken Linux with no working sendfile. If we
> > -- 
> > 2.9.3
> > 
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 163 bytes
Desc: not available
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20170110/cb3fd39d/signature.sig>


More information about the samba-technical mailing list