This method in sched.c says we should have a lock for ASYNC /* * Make an RPC task runnable. * * Note: If the task is ASYNC, this must be called with * the spinlock held to protect the wait queue operation. */ static void rpc_make_runnable(struct rpc_task *task) However, I don't think the lock is being taken for the call path starting with rpcb_call_async in rpcb_clnt.c: rpcb_call_async rpc_run_task rpc_execute rpc_make_runnable Is the comment on the make_runnable method wrong, or are we missing locking? Thanks, Ben -- Ben Greear <greearb@xxxxxxxxxxxxxxx> Candela Technologies Inc http://www.candelatech.com -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html