mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-19 02:54:24 +00:00
Merge pull request #1688 from JoelHutton/jh/variant_1_mitigations
Initial Spectre V1 mitigations (CVE-2017-5753).
This commit is contained in:
commit
37e8ab5323
2 changed files with 9 additions and 2 deletions
|
@ -162,4 +162,11 @@
|
|||
|
||||
#define COMPILER_BARRIER() __asm__ volatile ("" ::: "memory")
|
||||
|
||||
/* Compiler builtin of GCC >= 9 and planned in llvm */
|
||||
#ifdef __HAVE_SPECULATION_SAFE_VALUE
|
||||
# define SPECULATION_SAFE_VALUE(var) __builtin_speculation_safe_value(var)
|
||||
#else
|
||||
# define SPECULATION_SAFE_VALUE(var) var
|
||||
#endif
|
||||
|
||||
#endif /* UTILS_DEF_H */
|
||||
|
|
|
@ -206,9 +206,9 @@ static int psci_get_stat(u_register_t target_cpu, unsigned int power_state,
|
|||
|
||||
if (pwrlvl > PSCI_CPU_PWR_LVL) {
|
||||
/* Get the power domain index */
|
||||
parent_idx = psci_cpu_pd_nodes[target_idx].parent_node;
|
||||
parent_idx = SPECULATION_SAFE_VALUE(psci_cpu_pd_nodes[target_idx].parent_node);
|
||||
for (lvl = PSCI_CPU_PWR_LVL + 1U; lvl < pwrlvl; lvl++)
|
||||
parent_idx = psci_non_cpu_pd_nodes[parent_idx].parent_node;
|
||||
parent_idx = SPECULATION_SAFE_VALUE(psci_non_cpu_pd_nodes[parent_idx].parent_node);
|
||||
|
||||
/* Get the non cpu power domain stats */
|
||||
*psci_stat = psci_non_cpu_stat[parent_idx][stat_idx];
|
||||
|
|
Loading…
Add table
Reference in a new issue