summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnna-Maria Behnsen <anna-maria@linutronix.de>2025-03-03 12:11:05 +0100
committerThomas Gleixner <tglx@linutronix.de>2025-03-08 14:37:39 +0100
commitfa8152ca221110e14e43040bd442c8140bc2e03c (patch)
tree40643d0fdcf17742dc6d1fba0567040e8bbf6e09
parentb69b47a6b5f67ac1074e0a6baac7f07bdc3dceed (diff)
vdso: Make vdso_time_data cacheline aligned
vdso_time_data is not cacheline aligned at the moment. When instantiating an array, the start of the second array member is not cache line aligned. This increases the number of the required cache lines which needs to be read when handling e.g. CLOCK_MONOTONIC_RAW, because the data spawns an extra cache line if the previous data does not end at a cache line boundary. Therefore make struct vdso_time_data cacheline aligned. Signed-off-by: Anna-Maria Behnsen <anna-maria@linutronix.de> Signed-off-by: Nam Cao <namcao@linutronix.de> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/all/20250303-vdso-clock-v1-3-c1b5c69a166f@linutronix.de
-rw-r--r--include/vdso/datapage.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/vdso/datapage.h b/include/vdso/datapage.h
index ed4fb4c06e3e..dfd98f969f15 100644
--- a/include/vdso/datapage.h
+++ b/include/vdso/datapage.h
@@ -11,6 +11,7 @@
#include <vdso/align.h>
#include <vdso/bits.h>
+#include <vdso/cache.h>
#include <vdso/clocksource.h>
#include <vdso/ktime.h>
#include <vdso/limits.h>
@@ -126,7 +127,7 @@ struct vdso_time_data {
u32 __unused;
struct arch_vdso_time_data arch_data;
-};
+} ____cacheline_aligned;
/**
* struct vdso_rng_data - vdso RNG state information