Great.
Please also remove tasklist_lock from thread_group_cputime_alloc_smp(),
it is not needed.
I'd also suggest to kill
if (sig->cputime.totals)
return 0;
, the caller has already checked this.
Please note also that thread_group_cputime_clone_thread() doesn't need
the second argument.
Very minor nit, but thread_group_cputime_alloc_smp() doesn't really
need get_cpu() + put_cpu_no_resched(), it can use smp_processor_id().
Oleg.
--