Trond Myklebust 5a67657a2e SUNRPC: Fix race corrupting rpc upcall
If rpc_queue_upcall() adds a new upcall to the rpci->pipe list just
after rpc_pipe_release calls rpc_purge_list(), but before it calls
gss_pipe_release (as rpci->ops->release_pipe(inode)), then the latter
will free a message without deleting it from the rpci->pipe list.

We will be left with a freed object on the rpc->pipe list.  Most
frequent symptoms are kernel crashes in rpc.gssd system calls on the
pipe in question.

Reported-by: J. Bruce Fields <bfields@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: stable@kernel.org
2010-09-12 19:55:25 -04:00
..
2010-08-02 14:28:36 -05:00
2010-08-04 21:53:17 -07:00
2010-08-26 15:18:27 -07:00
2010-09-08 10:32:15 -07:00
2010-07-18 15:07:14 -07:00
2010-06-11 18:37:08 -07:00
2010-09-08 21:45:01 -07:00
2010-09-08 21:45:01 -07:00
2010-09-07 13:57:22 -07:00
2010-06-03 03:21:52 -07:00
2010-05-17 23:23:13 -07:00
2010-09-08 10:39:57 -07:00
2010-04-20 16:37:13 -07:00
2010-08-18 23:40:03 -07:00
2010-08-01 00:32:12 -07:00
2010-09-09 15:00:29 -07:00
2010-05-17 17:39:28 -07:00