[PATCH v4 4/6] powerpc/fsl: Enable cpu vulnerabilities reporting for NXP PPC BOOK3E
LEROY Christophe
christophe.leroy at c-s.fr
Thu Jul 19 02:02:03 AEST 2018
Diana Madalina Craciun <diana.craciun at nxp.com> a écrit :
> On 7/17/2018 7:47 PM, LEROY Christophe wrote:
>> Diana Craciun <diana.craciun at nxp.com> a écrit :
>>
>>> The NXP PPC Book3E platforms are not vulnerable to meltdown and
>>> Spectre v4, so make them PPC_BOOK3S_64 specific.
>>>
>>> Signed-off-by: Diana Craciun <diana.craciun at nxp.com>
>>> ---
>>> History:
>>>
>>> v2-->v3
>>> - used the existing functions for spectre v1/v2
>>>
>>> arch/powerpc/Kconfig | 7 ++++++-
>>> arch/powerpc/kernel/security.c | 2 ++
>>> 2 files changed, 8 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
>>> index 9f2b75f..116c953 100644
>>> --- a/arch/powerpc/Kconfig
>>> +++ b/arch/powerpc/Kconfig
>>> @@ -165,7 +165,7 @@ config PPC
>>> select GENERIC_CLOCKEVENTS_BROADCAST if SMP
>>> select GENERIC_CMOS_UPDATE
>>> select GENERIC_CPU_AUTOPROBE
>>> - select GENERIC_CPU_VULNERABILITIES if PPC_BOOK3S_64
>>> + select GENERIC_CPU_VULNERABILITIES if PPC_NOSPEC
>> I don't understand. You say this patch is to make something specific
>> to book3s64 specific, and you are creating a new config param that
>> make things less specific
>>
>> Christophe
>
> In order to enable the vulnerabilities reporting on NXP socs I need to
> enable them for PPC_FSL_BOOK3E. So they will be enabled for both
> PPC_FSL_BOOK3E and PPC_BOOK3S_64. This is the reason for adding the
> Kconfig. However this will enable: spectre v1/v2 and meltdown. NXP socs
> are not vulnerable to meltdown, so I made the meltdown reporting
> PPC_BOOK3S_64 specific. I guess I can have the PPC_NOSPEC definition in
> a separate patch to be more clear.
Yes you can. Or keep it as a single patch and add the details you gave
me in the patch description.
Christophe
>
> Diana
>
>>
>>> select GENERIC_IRQ_SHOW
>>> select GENERIC_IRQ_SHOW_LEVEL
>>> select GENERIC_SMP_IDLE_THREAD
>>> @@ -240,6 +240,11 @@ config PPC
>>> # Please keep this list sorted alphabetically.
>>> #
>>>
>>> +config PPC_NOSPEC
>>> + bool
>>> + default y
>>> + depends on PPC_BOOK3S_64 || PPC_FSL_BOOK3E
>>> +
>>> config GENERIC_CSUM
>>> def_bool n
>>>
>>> diff --git a/arch/powerpc/kernel/security.c
>>> b/arch/powerpc/kernel/security.c
>>> index 3a4e5c3..539c744 100644
>>> --- a/arch/powerpc/kernel/security.c
>>> +++ b/arch/powerpc/kernel/security.c
>>> @@ -92,6 +92,7 @@ static __init int barrier_nospec_debugfs_init(void)
>>> device_initcall(barrier_nospec_debugfs_init);
>>> #endif /* CONFIG_DEBUG_FS */
>>>
>>> +#ifdef CONFIG_PPC_BOOK3S_64
>>> ssize_t cpu_show_meltdown(struct device *dev, struct
>>> device_attribute *attr, char *buf)
>>> {
>>> bool thread_priv;
>>> @@ -124,6 +125,7 @@ ssize_t cpu_show_meltdown(struct device *dev,
>>> struct device_attribute *attr, cha
>>>
>>> return sprintf(buf, "Vulnerable\n");
>>> }
>>> +#endif
>>>
>>> ssize_t cpu_show_spectre_v1(struct device *dev, struct
>>> device_attribute *attr, char *buf)
>>> {
>>> --
>>> 2.5.5
>>
>>
More information about the Linuxppc-dev
mailing list