All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Shilovsky <piastryyy@gmail.com>
To: linux-cifs@vger.kernel.org, smfrench@gmail.com
Subject: [PATCH 0/3] more reconnect fixes
Date: Tue,  5 Mar 2019 15:51:53 -0800	[thread overview]
Message-ID: <1551829917-48772-1-git-send-email-pshilov@microsoft.com> (raw)

The patchset has 3 patches that fix some problems related to network reconnects.

The first patch fixes out-of-order requests sent over newly established TCP connections, in particular it prevents sending anything rather than SMB2_NEGOTIATE.

The second patch changes the return code from -ENOTSOCK to -EAGAIN for TCP connections that are in the middle of reconnect.

The third patch is a new version of the patch posted previously. Since we are doing socket sends in the same thread with a syscall we might experience interrupts due to signals. If such signals come while we are in the middle of sending SMB packet to the server, we may end up with partial sends and unnecessary network reconnects thus overloading the server. The patch masks off signals during the whole packet send thus avoiding interrupts and reconnects.

Pavel Shilovsky (3):
  CIFS: Only send SMB2_NEGOTIATE command on new TCP connections
  CIFS: Return -EAGAIN instead of -ENOTSOCK
  CIFS: Mask off signals when sending SMB packets

 fs/cifs/smb2transport.c |  8 ++++++++
 fs/cifs/transport.c     | 44 ++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 48 insertions(+), 4 deletions(-)

-- 
2.7.4


             reply	other threads:[~2019-03-05 23:52 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-05 23:51 Pavel Shilovsky [this message]
2019-03-05 23:51 ` [PATCH] CIFS: Fix read after write for files with read caching Pavel Shilovsky
2019-03-05 23:51 ` [PATCH 1/3] CIFS: Only send SMB2_NEGOTIATE command on new TCP connections Pavel Shilovsky
2019-03-05 23:51 ` [PATCH 2/3] CIFS: Return -EAGAIN instead of -ENOTSOCK Pavel Shilovsky
2019-03-05 23:51 ` [PATCH 3/3] CIFS: Mask off signals when sending SMB packets Pavel Shilovsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1551829917-48772-1-git-send-email-pshilov@microsoft.com \
    --to=piastryyy@gmail.com \
    --cc=linux-cifs@vger.kernel.org \
    --cc=smfrench@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.