diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2014-01-13 20:30:14 -0200 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2014-01-13 20:30:14 -0200 |
commit | ab7fb4d643a25bdd23969fa487bf07f348d15a55 (patch) | |
tree | 646d53fc0b07188c5549d4f54caaf121f78c2f09 /libre/linux-libre/rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch | |
parent | 009f7018a63dfcd721b42fc5d25b8b39f15f66f3 (diff) | |
download | abslibre-ab7fb4d643a25bdd23969fa487bf07f348d15a55.tar.gz abslibre-ab7fb4d643a25bdd23969fa487bf07f348d15a55.tar.bz2 abslibre-ab7fb4d643a25bdd23969fa487bf07f348d15a55.zip |
linux-libre-3.12.7-2: fix 15 seconds nfs hang, #37886 kernel oops => https://bugs.archlinux.org/task/37886
Diffstat (limited to 'libre/linux-libre/rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch')
-rw-r--r-- | libre/linux-libre/rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/libre/linux-libre/rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch b/libre/linux-libre/rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch new file mode 100644 index 000000000..e4b1a255f --- /dev/null +++ b/libre/linux-libre/rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-fails.patch @@ -0,0 +1,32 @@ +Bugzilla: 1037793 +Upstream-status: submitted for 3.14 + +In the event that we create the gssd/clntXX dir, but the pipe creation +subsequently fails, then we should remove the clntXX dir before +returning. + +Signed-off-by: Jeff Layton <jlayton@redhat.com> +--- + net/sunrpc/rpc_pipe.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c +index 5cd7ad1..0b74c61 100644 +--- a/net/sunrpc/rpc_pipe.c ++++ b/net/sunrpc/rpc_pipe.c +@@ -1313,6 +1313,8 @@ rpc_gssd_dummy_populate(struct dentry *root, struct rpc_pipe *pipe_data) + } + + pipe_dentry = rpc_mkpipe_dentry(clnt_dentry, "gssd", NULL, pipe_data); ++ if (IS_ERR(pipe_dentry)) ++ __rpc_depopulate(gssd_dentry, gssd_dummy_clnt_dir, 0, 1); + out: + dput(clnt_dentry); + dput(gssd_dentry); +-- +1.8.4.2 + +-- +To unsubscribe from this list: send the line "unsubscribe linux-nfs" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html |