|
@@ -172,6 +172,21 @@
|
|
|
#define DEFINE_PER_CPU_READ_MOSTLY(type, name) \
|
|
|
DEFINE_PER_CPU_SECTION(type, name, "..read_mostly")
|
|
|
|
|
|
+/*
|
|
|
+ * Declaration/definition used for per-CPU variables that should be accessed
|
|
|
+ * as decrypted when memory encryption is enabled in the guest.
|
|
|
+ */
|
|
|
+#if defined(CONFIG_VIRTUALIZATION) && defined(CONFIG_AMD_MEM_ENCRYPT)
|
|
|
+
|
|
|
+#define DECLARE_PER_CPU_DECRYPTED(type, name) \
|
|
|
+ DECLARE_PER_CPU_SECTION(type, name, "..decrypted")
|
|
|
+
|
|
|
+#define DEFINE_PER_CPU_DECRYPTED(type, name) \
|
|
|
+ DEFINE_PER_CPU_SECTION(type, name, "..decrypted")
|
|
|
+#else
|
|
|
+#define DEFINE_PER_CPU_DECRYPTED(type, name) DEFINE_PER_CPU(type, name)
|
|
|
+#endif
|
|
|
+
|
|
|
/*
|
|
|
* Intermodule exports for per-CPU variables. sparse forgets about
|
|
|
* address space across EXPORT_SYMBOL(), change EXPORT_SYMBOL() to
|