blockjob: reimplement block_job_sleep_ns to allow cancellation