summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2009-03-10 20:33:16 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2009-03-10 20:33:16 -0400
commiteb9b55ab4d73280597fd183b367d50452f4d7846 (patch)
tree80e0c4e5315ea5fd18bb5ba9d37ec5f77170631a /fs
parent16b71fdf97599f1b1b7f38418ee9922d9f117396 (diff)
SUNRPC: Tighten up the task locking rules in __rpc_execute()
We should probably not be testing any flags after we've cleared the RPC_TASK_RUNNING flag, since rpc_make_runnable() is then free to assign the rpc_task to another workqueue, which may then destroy it. We can fix any races with rpc_make_runnable() by ensuring that we only clear the RPC_TASK_RUNNING flag while holding the rpc_wait_queue->lock that the task is supposed to be sleeping on (and then checking whether or not the task really is sleeping). Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs')
0 files changed, 0 insertions, 0 deletions