[SUNRPC]: Use completions instead of sleep_on for rpciod.
The rpciod shutdown code gives ugly sleep_on without BKL warnings in
-mm. And it looks indeed somewhat racy.
The easy fix would be to simply use a completion as in the patch below,
but that removes all the signal fuzzing semantics the current code has.
I don't really understand why we want to cancel the operation by
signals, but I think it'd be better to leave that to people familar with
the code anyway..