Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a46c594 authored by Li Zefan's avatar Li Zefan Committed by Ingo Molnar
Browse files

cpuacct: reduce one NULL check in fast-path



Impact: micro-optimization

In cpuacct_charge(), task_ca() will never return NULL, so change
for(...) to do { } while(...) to save one NULL check.

Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Menage <menage@google.com>
Cc: Balbir Singh <balbir@linux.vnet.ibm.com>
Cc: Bharata B Rao <bharata@linux.vnet.ibm.com>
LKML-Reference: <49B863F5.2060400@cn.fujitsu.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 65a37b29
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -9599,10 +9599,11 @@ static void cpuacct_charge(struct task_struct *tsk, u64 cputime)
	cpu = task_cpu(tsk);
	ca = task_ca(tsk);

	for (; ca; ca = ca->parent) {
	do {
		u64 *cpuusage = per_cpu_ptr(ca->cpuusage, cpu);
		*cpuusage += cputime;
	}
		ca = ca->parent;
	} while (ca);
}

struct cgroup_subsys cpuacct_subsys = {