All of lore.kernel.org
 help / color / mirror / Atom feed
From: Trond Myklebust <Trond.Myklebust@netapp.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org,
	Sam Ravnborg <sam@ravnborg.org>,
	Steven Whitehouse <swhiteho@redhat.com>,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	Vu Pham <vu@mellanox.com>, Tom Talpey <tmtalpey@gmail.com>
Subject: [GIT PULL] Please pull NFS client bugfixes
Date: Tue, 26 May 2009 15:06:27 -0400	[thread overview]
Message-ID: <1243364787.30354.8.camel@heimdal.trondhjem.org> (raw)

Hi Linus,

Please pull from the "bugfixes" branch of the repository at

   git pull git://git.linux-nfs.org/projects/trondmy/nfs-2.6.git bugfixes

This will update the following files through the appended changesets.

  Cheers,
    Trond

----
 fs/nfs/nfs4proc.c           |    9 +++------
 fs/nfs/nfsroot.c            |    2 +-
 net/sunrpc/xprtrdma/verbs.c |    3 ++-
 3 files changed, 6 insertions(+), 8 deletions(-)

commit 95baa25c7321eb8613246acbf61b97911cc748d3
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Tue May 26 14:51:00 2009 -0400

    NFSv4: Fix the case where NFSv4 renewal fails
    
    If the asynchronous lease renewal fails (usually due to a soft timeout),
    then we _must_ schedule state recovery in order to ensure that we don't
    lose the lease unnecessarily or, if the lease is already lost, that we
    recover the locking state promptly...
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit d0367a508af9cf97beb202935bb9ad8883d30cd1
Author: Sam Ravnborg <sam@ravnborg.org>
Date:   Tue May 26 14:51:00 2009 -0400

    nfs: fix build error in nfsroot with initconst
    
    fix build error with latest kbuild adjustments to initconst.
    
    The commit a447c0932445f92ce6f4c1bd020f62c5097a7842 ("vfs: Use
    const for kernel parser table") changed:
    
        static match_table_t __initdata tokens = {
    to
        static match_table_t __initconst tokens = {
    
    But the missing const causes powerpc to fail with latest
    updates to __initconst like this:
    
    fs/nfs/nfsroot.c:400: error: __setup_str_nfs_root_setup causes a section type conflict
    fs/nfs/nfsroot.c:400: error: __setup_str_nfs_root_setup causes a section type conflict
    
    The bug is only present with kbuild-next.
    Following patch has been build tested.
    
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
    Cc: Steven Whitehouse <swhiteho@redhat.com>
    Cc: Stephen Rothwell <sfr@canb.auug.org.au>
    Acked-by: Jan Beulich <jbeulich@novell.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 68743082b560067e3e93eab8b2568f238e486865
Author: Vu Pham <vu@mellanox.com>
Date:   Tue May 26 14:51:00 2009 -0400

    XPRTRDMA: fix client rpcrdma FRMR registration on mlx4 devices
    
    mlx4/connectX FRMR requires local write enable together with remote
    rdma write enable. This fixes NFS/RDMA operation over the ConnectX
    Infiniband HCA in the default memreg mode.
    
    Signed-off-by: Vu Pham <vu@mellanox.com>
    Signed-off-by: Tom Talpey <tmtalpey@gmail.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index a4d2426..4674f80 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -2594,12 +2594,9 @@ static void nfs4_renew_done(struct rpc_task *task, void *data)
 	unsigned long timestamp = (unsigned long)data;
 
 	if (task->tk_status < 0) {
-		switch (task->tk_status) {
-			case -NFS4ERR_STALE_CLIENTID:
-			case -NFS4ERR_EXPIRED:
-			case -NFS4ERR_CB_PATH_DOWN:
-				nfs4_schedule_state_recovery(clp);
-		}
+		/* Unless we're shutting down, schedule state recovery! */
+		if (test_bit(NFS_CS_RENEWD, &clp->cl_res_state) != 0)
+			nfs4_schedule_state_recovery(clp);
 		return;
 	}
 	spin_lock(&clp->cl_lock);
diff --git a/fs/nfs/nfsroot.c b/fs/nfs/nfsroot.c
index d9ef602..e3ed590 100644
--- a/fs/nfs/nfsroot.c
+++ b/fs/nfs/nfsroot.c
@@ -129,7 +129,7 @@ enum {
 	Opt_err
 };
 
-static match_table_t __initconst tokens = {
+static const match_table_t tokens __initconst = {
 	{Opt_port, "port=%u"},
 	{Opt_rsize, "rsize=%u"},
 	{Opt_wsize, "wsize=%u"},
diff --git a/net/sunrpc/xprtrdma/verbs.c b/net/sunrpc/xprtrdma/verbs.c
index 3b21e0c..465aafc 100644
--- a/net/sunrpc/xprtrdma/verbs.c
+++ b/net/sunrpc/xprtrdma/verbs.c
@@ -1495,7 +1495,8 @@ rpcrdma_register_frmr_external(struct rpcrdma_mr_seg *seg,
 	frmr_wr.wr.fast_reg.page_shift = PAGE_SHIFT;
 	frmr_wr.wr.fast_reg.length = i << PAGE_SHIFT;
 	frmr_wr.wr.fast_reg.access_flags = (writing ?
-				IB_ACCESS_REMOTE_WRITE : IB_ACCESS_REMOTE_READ);
+				IB_ACCESS_REMOTE_WRITE | IB_ACCESS_LOCAL_WRITE :
+				IB_ACCESS_REMOTE_READ);
 	frmr_wr.wr.fast_reg.rkey = seg1->mr_chunk.rl_mw->r.frmr.fr_mr->rkey;
 	DECR_CQCOUNT(&r_xprt->rx_ep);
 

-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com

WARNING: multiple messages have this Message-ID (diff)
From: Trond Myklebust <Trond.Myklebust@netapp.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org,
	Sam Ravnborg <sam-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org>,
	Steven Whitehouse <swhiteho@redhat.com>,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	Vu Pham <vu@mellanox.com>, Tom Talpey <tmtalpey@gmail.com>
Subject: [GIT PULL] Please pull NFS client bugfixes
Date: Tue, 26 May 2009 15:06:27 -0400	[thread overview]
Message-ID: <1243364787.30354.8.camel@heimdal.trondhjem.org> (raw)

Hi Linus,

Please pull from the "bugfixes" branch of the repository at

   git pull git://git.linux-nfs.org/projects/trondmy/nfs-2.6.git bugfixes

This will update the following files through the appended changesets.

  Cheers,
    Trond

----
 fs/nfs/nfs4proc.c           |    9 +++------
 fs/nfs/nfsroot.c            |    2 +-
 net/sunrpc/xprtrdma/verbs.c |    3 ++-
 3 files changed, 6 insertions(+), 8 deletions(-)

commit 95baa25c7321eb8613246acbf61b97911cc748d3
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Tue May 26 14:51:00 2009 -0400

    NFSv4: Fix the case where NFSv4 renewal fails
    
    If the asynchronous lease renewal fails (usually due to a soft timeout),
    then we _must_ schedule state recovery in order to ensure that we don't
    lose the lease unnecessarily or, if the lease is already lost, that we
    recover the locking state promptly...
    
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit d0367a508af9cf97beb202935bb9ad8883d30cd1
Author: Sam Ravnborg <sam-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org>
Date:   Tue May 26 14:51:00 2009 -0400

    nfs: fix build error in nfsroot with initconst
    
    fix build error with latest kbuild adjustments to initconst.
    
    The commit a447c0932445f92ce6f4c1bd020f62c5097a7842 ("vfs: Use
    const for kernel parser table") changed:
    
        static match_table_t __initdata tokens = {
    to
        static match_table_t __initconst tokens = {
    
    But the missing const causes powerpc to fail with latest
    updates to __initconst like this:
    
    fs/nfs/nfsroot.c:400: error: __setup_str_nfs_root_setup causes a section type conflict
    fs/nfs/nfsroot.c:400: error: __setup_str_nfs_root_setup causes a section type conflict
    
    The bug is only present with kbuild-next.
    Following patch has been build tested.
    
    Signed-off-by: Sam Ravnborg <sam-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org>
    Cc: Steven Whitehouse <swhiteho@redhat.com>
    Cc: Stephen Rothwell <sfr@canb.auug.org.au>
    Acked-by: Jan Beulich <jbeulich@novell.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

commit 68743082b560067e3e93eab8b2568f238e486865
Author: Vu Pham <vu@mellanox.com>
Date:   Tue May 26 14:51:00 2009 -0400

    XPRTRDMA: fix client rpcrdma FRMR registration on mlx4 devices
    
    mlx4/connectX FRMR requires local write enable together with remote
    rdma write enable. This fixes NFS/RDMA operation over the ConnectX
    Infiniband HCA in the default memreg mode.
    
    Signed-off-by: Vu Pham <vu@mellanox.com>
    Signed-off-by: Tom Talpey <tmtalpey@gmail.com>
    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index a4d2426..4674f80 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -2594,12 +2594,9 @@ static void nfs4_renew_done(struct rpc_task *task, void *data)
 	unsigned long timestamp = (unsigned long)data;
 
 	if (task->tk_status < 0) {
-		switch (task->tk_status) {
-			case -NFS4ERR_STALE_CLIENTID:
-			case -NFS4ERR_EXPIRED:
-			case -NFS4ERR_CB_PATH_DOWN:
-				nfs4_schedule_state_recovery(clp);
-		}
+		/* Unless we're shutting down, schedule state recovery! */
+		if (test_bit(NFS_CS_RENEWD, &clp->cl_res_state) != 0)
+			nfs4_schedule_state_recovery(clp);
 		return;
 	}
 	spin_lock(&clp->cl_lock);
diff --git a/fs/nfs/nfsroot.c b/fs/nfs/nfsroot.c
index d9ef602..e3ed590 100644
--- a/fs/nfs/nfsroot.c
+++ b/fs/nfs/nfsroot.c
@@ -129,7 +129,7 @@ enum {
 	Opt_err
 };
 
-static match_table_t __initconst tokens = {
+static const match_table_t tokens __initconst = {
 	{Opt_port, "port=%u"},
 	{Opt_rsize, "rsize=%u"},
 	{Opt_wsize, "wsize=%u"},
diff --git a/net/sunrpc/xprtrdma/verbs.c b/net/sunrpc/xprtrdma/verbs.c
index 3b21e0c..465aafc 100644
--- a/net/sunrpc/xprtrdma/verbs.c
+++ b/net/sunrpc/xprtrdma/verbs.c
@@ -1495,7 +1495,8 @@ rpcrdma_register_frmr_external(struct rpcrdma_mr_seg *seg,
 	frmr_wr.wr.fast_reg.page_shift = PAGE_SHIFT;
 	frmr_wr.wr.fast_reg.length = i << PAGE_SHIFT;
 	frmr_wr.wr.fast_reg.access_flags = (writing ?
-				IB_ACCESS_REMOTE_WRITE : IB_ACCESS_REMOTE_READ);
+				IB_ACCESS_REMOTE_WRITE | IB_ACCESS_LOCAL_WRITE :
+				IB_ACCESS_REMOTE_READ);
 	frmr_wr.wr.fast_reg.rkey = seg1->mr_chunk.rl_mw->r.frmr.fr_mr->rkey;
 	DECR_CQCOUNT(&r_xprt->rx_ep);
 

-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
Trond.Myklebust@netapp.com
www.netapp.com

             reply	other threads:[~2009-05-26 19:08 UTC|newest]

Thread overview: 98+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-26 19:06 Trond Myklebust [this message]
2009-05-26 19:06 ` [GIT PULL] Please pull NFS client bugfixes Trond Myklebust
2010-01-07 20:29 Trond Myklebust
2010-01-07 21:00 ` Andi Kleen
2010-01-07 21:23   ` Peter Staubach
2010-01-07 21:35     ` Andi Kleen
2010-01-07 21:53   ` Trond Myklebust
2010-01-07 23:51     ` Andi Kleen
2010-01-08  0:14       ` Trond Myklebust
2010-01-08  0:34         ` Linus Torvalds
2010-01-08  0:45           ` Andi Kleen
2010-01-08  1:03             ` Trond Myklebust
2010-01-08  1:03           ` Trond Myklebust
2010-01-08  1:12             ` Linus Torvalds
2010-01-08  1:22               ` Trond Myklebust
2010-01-08  1:26                 ` Trond Myklebust
2010-01-08  1:30                 ` Linus Torvalds
2010-01-08  1:35                   ` Linus Torvalds
2010-01-08  2:00                     ` Linus Torvalds
2010-01-14 13:18                       ` Peter Zijlstra
2010-01-08  5:19                   ` Andi Kleen
2010-01-08  1:22               ` Linus Torvalds
2010-01-08  0:43         ` Andi Kleen
2010-02-04 19:10 Trond Myklebust
2010-03-17 21:55 Trond Myklebust
2010-03-23 17:00 Trond Myklebust
2010-04-29 16:48 Trond Myklebust
2010-05-07  2:22 Trond Myklebust
2010-05-26 19:42 Trond Myklebust
2010-11-26 18:56 Trond Myklebust
2011-03-14 18:09 Trond Myklebust
2011-04-08 18:40 [GIT PULL] please " Trond Myklebust
2011-05-13 20:23 [GIT PULL] Please " Trond Myklebust
2011-07-12 23:30 Trond Myklebust
2011-08-19  1:05 Trond Myklebust
2011-11-22 11:50 Trond Myklebust
2011-12-20  6:15 Trond Myklebust
2012-04-24 20:18 [GIT PULL] please " Myklebust, Trond
2012-04-24 20:18 ` Myklebust, Trond
2012-05-02  3:57 [GIT PULL] Please " Myklebust, Trond
2012-05-02  3:57 ` Myklebust, Trond
2012-07-13 15:14 Myklebust, Trond
2012-07-13 15:14 ` Myklebust, Trond
2012-09-12 19:19 Myklebust, Trond
2012-09-12 19:19 ` Myklebust, Trond
2012-10-22 17:42 Myklebust, Trond
2012-10-22 17:42 ` Myklebust, Trond
2012-11-03 19:48 Myklebust, Trond
2012-11-03 19:48 ` Myklebust, Trond
2013-01-07 15:45 Myklebust, Trond
2013-02-21  3:38 Myklebust, Trond
2013-03-03  0:08 Myklebust, Trond
2013-03-26 18:26 Myklebust, Trond
2013-05-26 19:29 Myklebust, Trond
2013-09-30 22:02 Myklebust, Trond
2013-09-30 22:02 ` Myklebust, Trond
2013-11-16 21:09 Myklebust, Trond
2013-12-05 17:20 Trond Myklebust
2014-01-31 21:41 Trond Myklebust
2014-09-19 19:32 Trond Myklebust
2014-11-14 23:04 Trond Myklebust
2015-01-16 14:35 Trond Myklebust
2015-01-29 21:37 Trond Myklebust
2015-03-06  3:46 Trond Myklebust
2015-07-28 16:03 Trond Myklebust
2015-09-25 15:14 Trond Myklebust
2015-10-07  2:52 Trond Myklebust
2016-10-21 20:30 Anna Schumaker
2017-01-16 20:14 Trond Myklebust
2017-01-16 20:14 ` Trond Myklebust
2017-01-28 17:04 Trond Myklebust
2017-01-28 17:04 ` Trond Myklebust
2018-02-25 17:02 Trond Myklebust
2018-02-25 17:02 ` Trond Myklebust
2018-03-12 17:29 Trond Myklebust
2018-03-12 17:29 ` Trond Myklebust
2018-12-19 16:49 Trond Myklebust
2018-12-20  2:50 ` pr-tracker-bot
2018-12-20 15:23 ` Geert Uytterhoeven
2019-04-13 14:56 Trond Myklebust
2019-04-13 22:00 ` pr-tracker-bot
2019-06-05 21:02 Schumaker, Anna
2019-08-08 21:26 Trond Myklebust
2019-08-09  1:30 ` pr-tracker-bot
2019-08-27 19:26 Trond Myklebust
2019-08-27 20:55 ` pr-tracker-bot
2020-05-02 13:35 Trond Myklebust
2020-05-02 18:45 ` pr-tracker-bot
2020-05-15 21:00 Trond Myklebust
2020-05-15 21:10 ` pr-tracker-bot
2020-09-28 17:27 Trond Myklebust
2020-09-28 18:16 ` pr-tracker-bot
2021-01-12 14:31 Trond Myklebust
2021-01-12 18:00 ` pr-tracker-bot
2022-09-12 21:34 Trond Myklebust
2022-09-12 21:57 ` pr-tracker-bot
2023-01-07 18:09 Trond Myklebust
2023-01-07 18:43 ` pr-tracker-bot

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=1243364787.30354.8.camel@heimdal.trondhjem.org \
    --to=trond.myklebust@netapp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=sam@ravnborg.org \
    --cc=sfr@canb.auug.org.au \
    --cc=swhiteho@redhat.com \
    --cc=tmtalpey@gmail.com \
    --cc=torvalds@linux-foundation.org \
    --cc=vu@mellanox.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.