root/arch/alpha/kernel/bugs.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. cpu_is_ev6_or_later
  2. cpu_show_meltdown
  3. cpu_show_spectre_v1
  4. cpu_show_spectre_v2

   1 
   2 #include <asm/hwrpb.h>
   3 #include <linux/device.h>
   4 
   5 
   6 #ifdef CONFIG_SYSFS
   7 
   8 static int cpu_is_ev6_or_later(void)
   9 {
  10         struct percpu_struct *cpu;
  11         unsigned long cputype;
  12 
  13         cpu = (struct percpu_struct *)((char *)hwrpb + hwrpb->processor_offset);
  14         cputype = cpu->type & 0xffffffff;
  15         /* Include all of EV6, EV67, EV68, EV7, EV79 and EV69. */
  16         return (cputype == EV6_CPU) || ((cputype >= EV67_CPU) && (cputype <= EV69_CPU));
  17 }
  18 
  19 ssize_t cpu_show_meltdown(struct device *dev,
  20                           struct device_attribute *attr, char *buf)
  21 {
  22         if (cpu_is_ev6_or_later())
  23                 return sprintf(buf, "Vulnerable\n");
  24         else
  25                 return sprintf(buf, "Not affected\n");
  26 }
  27 
  28 ssize_t cpu_show_spectre_v1(struct device *dev,
  29                             struct device_attribute *attr, char *buf)
  30 {
  31         if (cpu_is_ev6_or_later())
  32                 return sprintf(buf, "Vulnerable\n");
  33         else
  34                 return sprintf(buf, "Not affected\n");
  35 }
  36 
  37 ssize_t cpu_show_spectre_v2(struct device *dev,
  38                             struct device_attribute *attr, char *buf)
  39 {
  40         if (cpu_is_ev6_or_later())
  41                 return sprintf(buf, "Vulnerable\n");
  42         else
  43                 return sprintf(buf, "Not affected\n");
  44 }
  45 #endif

/* [<][>][^][v][top][bottom][index][help] */