Skip to content
  • Linus Torvalds's avatar
    Merge branch 'spectre' of git://git.armlinux.org.uk/~rmk/linux-arm · cfaa9f02
    Linus Torvalds authored
    Pull ARM spectre updates from Russell King:
     "These are the currently known final bits that resolve the Spectre
      issues. big.Little systems used to be sufficiently identical in that
      there were no differences between individual CPUs in the system that
      mattered to the kernel. With the advent of the Spectre problem, the
      CPUs now have differences in how the workaround is applied.
    
      As a result of previous Spectre patches, these systems ended up
      reporting quite a lot of:
    
         "CPUx: Spectre v2: incorrect context switching function, system vulnerable"
    
      messages due to the action of the big.Little switcher causing the CPUs
      to be re-initialised regularly. This series resolves that issue by
      making the CPU vtable unique to each CPU.
    
      However, since this is used very early, before per-cpu is setup,
      per-cpu can't be used. We also have a problem that two of the methods
      are not called from preempt-safe paths, but thankfully these remain
      identical between all CPUs in the system. To make sure, we validate
      that these are identical during boot"
    
    * 'spectre' of git://git.armlinux.org.uk/~rmk/linux-arm:
      ARM: spectre-v2: per-CPU vtables to work around big.Little systems
      ARM: add PROC_VTABLE and PROC_TABLE macros
      ARM: clean up per-processor check_bugs method call
      ARM: split out processor lookup
      ARM: make lookup_processor_type() non-__init
    cfaa9f02