diff options
author | André Fabian Silva Delgado <andre@pc-01.localdomain> | 2012-06-12 14:09:59 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <andre@pc-01.localdomain> | 2012-06-12 14:09:59 -0300 |
commit | a8a0c9d4965d7b004de5659cb9dcbadd8d8d714d (patch) | |
tree | 9eae7925679039fbcf8d80340c1462cf94a5e2de /libre/linux-libre/3.4.2-rpc_pipefs.patch | |
parent | 6d006ae5a02b1276e0fe231c95a23465e126e759 (diff) | |
download | abslibre-a8a0c9d4965d7b004de5659cb9dcbadd8d8d714d.tar.gz abslibre-a8a0c9d4965d7b004de5659cb9dcbadd8d8d714d.tar.bz2 abslibre-a8a0c9d4965d7b004de5659cb9dcbadd8d8d714d.zip |
linux-libre-3.4.2-2: fix potential nfs4 issue and updating version for mips64el
Diffstat (limited to 'libre/linux-libre/3.4.2-rpc_pipefs.patch')
-rw-r--r-- | libre/linux-libre/3.4.2-rpc_pipefs.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/libre/linux-libre/3.4.2-rpc_pipefs.patch b/libre/linux-libre/3.4.2-rpc_pipefs.patch new file mode 100644 index 000000000..5c3245669 --- /dev/null +++ b/libre/linux-libre/3.4.2-rpc_pipefs.patch @@ -0,0 +1,34 @@ +diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c +index 0404047..21fde99 100644 +--- a/net/sunrpc/rpc_pipe.c ++++ b/net/sunrpc/rpc_pipe.c +@@ -71,7 +71,9 @@ static void rpc_purge_list(wait_queue_head_t *waitq, struct list_head *head, + msg->errno = err; + destroy_msg(msg); + } while (!list_empty(head)); +- wake_up(waitq); ++ ++ if (waitq) ++ wake_up(waitq); + } + + static void +@@ -91,11 +93,9 @@ rpc_timeout_upcall_queue(struct work_struct *work) + } + dentry = dget(pipe->dentry); + spin_unlock(&pipe->lock); +- if (dentry) { +- rpc_purge_list(&RPC_I(dentry->d_inode)->waitq, +- &free_list, destroy_msg, -ETIMEDOUT); +- dput(dentry); +- } ++ rpc_purge_list(dentry ? &RPC_I(dentry->d_inode)->waitq : NULL, ++ &free_list, destroy_msg, -ETIMEDOUT); ++ dput(dentry); + } + + ssize_t rpc_pipe_generic_upcall(struct file *filp, struct rpc_pipe_msg *msg, +-- +1.7.7.6 + + |