DF-4779 / fix.diff
--- a/sys/dev/powermng/corecstat/corecstat.c +++ b/sys/dev/powermng/corecstat/corecstat.c @@ -180,6 +180,9 @@ static int corecstat_probe(device_t dev) { int cpu_family, cpu_model; if (resource_disabled("corecstat", 0)) return (ENXIO); + + if (CPUID_TO_FAMILY(cpu_id) != 0x06) + return (ENXIO); cpu_model = CPUID_TO_MODEL(cpu_id); cpu_family = CPUID_TO_FAMILY(cpu_id); @@ -256,6 +259,10 @@ corecstat_attach(device_t dev) cpu_model = CPUID_TO_MODEL(cpu_id); cpu_family = CPUID_TO_FAMILY(cpu_id); + /* Belt and suspenders: probe() already rejected non-06h families. */ + if (cpu_family != 0x06) + return (ENXIO); + if (cpu_family == 0x06) { switch (cpu_model) { /* ATOM */ |