diff options
author | Emese Revfy <re.emese@gmail.com> | 2016-06-20 14:42:34 -0400 |
---|---|---|
committer | Kees Cook <keescook@chromium.org> | 2016-10-10 17:51:45 -0400 |
commit | 0766f788eb727e2e330d55d30545db65bcf2623f (patch) | |
tree | 0436ae3b005558a4fb827459fe5c602037fe764a /kernel/time/timer.c | |
parent | 38addce8b600ca335dc86fa3d48c890f1c6fa1f4 (diff) |
latent_entropy: Mark functions with __latent_entropy
The __latent_entropy gcc attribute can be used only on functions and
variables. If it is on a function then the plugin will instrument it for
gathering control-flow entropy. If the attribute is on a variable then
the plugin will initialize it with random contents. The variable must
be an integer, an integer array type or a structure with integer fields.
These specific functions have been selected because they are init
functions (to help gather boot-time entropy), are called at unpredictable
times, or they have variable loops, each of which provide some level of
latent entropy.
Signed-off-by: Emese Revfy <re.emese@gmail.com>
[kees: expanded commit message]
Signed-off-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'kernel/time/timer.c')
-rw-r--r-- | kernel/time/timer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/time/timer.c b/kernel/time/timer.c index 32bf6f75a8fe..2d47980a1bc4 100644 --- a/kernel/time/timer.c +++ b/kernel/time/timer.c | |||
@@ -1633,7 +1633,7 @@ static inline void __run_timers(struct timer_base *base) | |||
1633 | /* | 1633 | /* |
1634 | * This function runs timers and the timer-tq in bottom half context. | 1634 | * This function runs timers and the timer-tq in bottom half context. |
1635 | */ | 1635 | */ |
1636 | static void run_timer_softirq(struct softirq_action *h) | 1636 | static __latent_entropy void run_timer_softirq(struct softirq_action *h) |
1637 | { | 1637 | { |
1638 | struct timer_base *base = this_cpu_ptr(&timer_bases[BASE_STD]); | 1638 | struct timer_base *base = this_cpu_ptr(&timer_bases[BASE_STD]); |
1639 | 1639 | ||