]> git.karo-electronics.de Git - karo-tx-linux.git/commit
SUNRPC: Ensure we always run the tk_callback before tk_action
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 15 Mar 2011 23:56:30 +0000 (19:56 -0400)
committerAK <andi@firstfloor.org>
Thu, 31 Mar 2011 18:58:41 +0000 (11:58 -0700)
commit7d88d3b036943c87750745bded1d39fb76691b9c
tree3bf9d5f7f20485e14e673b347e580e33aac314b4
parent5989dd43dff051d62fea4ea5f730dec9c9acb3c1
SUNRPC: Ensure we always run the tk_callback before tk_action

commit e020c6800c9621a77223bf2c1ff68180e41e8ebf upstream.

This fixes a race in which the task->tk_callback() puts the rpc_task
to sleep, setting a new callback. Under certain circumstances, the current
code may end up executing the task->tk_action before it gets round to the
callback.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
net/sunrpc/sched.c