Skip to contentSkip to conversation

sched: Is nsecs_to_cputime valid?

Question Namhyung Kim 1 participant 1 message Jul 5, 2012

lore
Share & tools
lore
#0 lore raw

The following message is a courtesy copy of an article that has been posted to gmane.linux.kernel as well.

Hi,

When I look at kernel/sched/core.c, I found a dubious bit on the nsecs_to_cputime macro. It's defined as:

#ifndef nsecs_to_cputime

# define nsecs_to_cputime(__nsecs)	nsecs_to_jiffies(__nsecs)
#endif

While default implementation of jiffies_to_cputime (in include/asm-generic/cputime.h) returns just the same vaule (w/ casting), some arch's (ia64, ppc and s390) define their own ones. So nsecs_to_cputime on those arch's will end up returning time in jiffies rather than cputime.

I see it depends on CONFIG_VIRT_CPU_ACCOUTING and ia64 and ppc use the default j_to_ct when not defined. But it seems it's not obvious for s390. Anyway I think converting the return value to cputime again is need for self-containedness.

Am I missing something?

Thanks,
Namhyung