1. 12 Oct, 2019 23 commits
  2. 11 Oct, 2019 16 commits
  3. 10 Oct, 2019 1 commit
    • Benjamin Coddington's avatar
      SUNRPC: fix race to sk_err after xs_error_report · af84537d
      Benjamin Coddington authored
      Since commit 4f8943f8 ("SUNRPC: Replace direct task wakeups from
      softirq context") there has been a race to the value of the sk_err if both
      XPRT_SOCK_WAKE_ERROR and XPRT_SOCK_WAKE_DISCONNECT are set.  In that case,
      we may end up losing the sk_err value that existed when xs_error_report was
      called.
      
      Fix this by reverting to the previous behavior: instead of using SO_ERROR
      to retrieve the value at a later time (which might also return sk_err_soft),
      copy the sk_err value onto struct sock_xprt, and use that value to wake
      pending tasks.
      Signed-off-by: default avatarBenjamin Coddington <bcodding@redhat.com>
      Fixes: 4f8943f8 ("SUNRPC: Replace direct task wakeups from softirq context")
      Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
      af84537d