Scroll to navigation

__ROUND_JIFFIES_RELA(9) Driver Basics __ROUND_JIFFIES_RELA(9)

NAME

__round_jiffies_relative - function to round jiffies to a full second

SYNOPSIS

unsigned long __round_jiffies_relative(unsigned long j, int cpu);

ARGUMENTS

j

the time in (relative) jiffies that should be rounded

cpu

the processor number on which the timeout will happen

DESCRIPTION

__round_jiffies_relative rounds a time delta in the future (in jiffies) up or down to (approximately) full seconds. This is useful for timers for which the exact time they fire does not matter too much, as long as they fire approximately every X seconds.

By rounding these timers to whole seconds, all such timers will fire at the same time, rather than at various times spread out. The goal of this is to have the CPU wake up less, which saves power.

The exact rounding is skewed for each processor to avoid all processors firing at the exact same time, which could lead to lock contention or spurious cache line bouncing.

The return value is the rounded version of the j parameter.

COPYRIGHT

June 2024 Kernel Hackers Manual 3.10