计算机 · 2021年9月17日 0

Spectre Meltdown

Spectre & Meltdown Checker

https://github.com/speed47/spectre-meltdown-checker

Spectre & Meltdown的影响

为了修复Spectre和Meltdown的安全问题,Linux会使用kernel pagetable isolation(kpti)等技术,而这可能会造成性能上的明显下降。如果并不是特别在意Spectre和Meltdown的安全风险,可以考虑disable这些安全措施。
disable的方法:

  1. 在编译内核时不要勾选这些特性
  2. 在Linux内核的启动参数里设置关闭这些特性
    https://www.stevenrombauts.be/2018/02/how-to-disable-page-table-isolation-on-ubuntu-for-benchmarking/
    先如上面链接所述,通过查看/boot/config-xxx文件确认内核支持pti特性,然后修改/etc/default/grub文件(需要说明的是,根据本人的工作经验是直接改的/boot/grub/grub.cfg这个文件里的启动参数,而不是/etc/default/grub这个文件),在启动参数里加上pti=off
    作为参考,可以添加如下的内核启动参数:pti=off spectre_v2=off l1tf=off nospec_store_bypass_disable no_stf_barrier

比较开启KPTI与不开启的效果:
https://github.com/brendangregg/Misc/tree/master/s1bench