cyring / CoreFreq

CoreFreq : CPU monitoring and tuning software designed for 64-bit processors.
https://www.cyring.fr
GNU General Public License v2.0
2k stars 126 forks source link

[Atom/Gemini Lake] `modprobe corefreqk` fails with system stall, Segmentation fault and trace in kernel log/ `dmesg`. #227

Closed dreirund closed 3 years ago

dreirund commented 3 years ago

Problem description

Trying to insert the module corefreqk fails with sime call traces in the kernel log, a few seconds system stall and a subsequent segmentation fault of modprobe:

modprobe corefreqk:
[few seconds system stall]

Segmentation fault

Not reproducible without reboots since subsequent invocations of modprobe corefreqk just seem to not terminate without system stall and without other noticeable effects.

Relevant parts in dmesg:

[  996.724383] CoreFreq(1:-1): Processor [ 06_7A] Architecture [Atom/Gemini Lake] CPU [4/4]
[  996.724445] general protection fault: 0000 [#1] PREEMPT SMP PTI
[  996.724454] CPU: 1 PID: 8546 Comm: modprobe Tainted: G           OE     5.11.0-pf6-longcmdline-custom #1
[  996.724459] Hardware name: GPD MicroPC/Default string, BIOS 4.10 06/14/2019
[  996.724462] RIP: 0010:Start_Haswell_ULT+0x2bd/0x330 [corefreqk]
[  996.724498] Code: 48 09 d0 49 89 c0 4c 89 16 4c 89 5e 08 4c 89 66 10 4c 89 6e 20 4c 89 76 28 4c 89 7e 30 4c 89 4e 38 4c 89 46 40 b9 95 03 00 00 <0f> 32 48 8b 35 f2 c6 01 00 48 c1 e2 20 48 8b 0e 89 c0 48 09 c2 48
[  996.724502] RSP: 0018:ffffb9aa0bab7a58 EFLAGS: 00010046
[  996.724507] RAX: 0000000000000000 RBX: ffff9d4362dfd000 RCX: 0000000000000395
[  996.724510] RDX: 0000000000000000 RSI: ffff9d4302d38000 RDI: ffff9d430eceb780
[  996.724512] RBP: 0000000000000001 R08: 0000000000000000 R09: 0000000000000000
[  996.724514] R10: 000000f1541487d4 R11: 00000004c49f0766 R12: 0000000000000000
[  996.724517] R13: 0000006e02ffb1ef R14: 0000000000000000 R15: 0000000000000000
[  996.724519] FS:  00007fd40411e740(0000) GS:ffff9d4476c80000(0000) knlGS:0000000000000000
[  996.724522] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  996.724525] CR2: 00007fd403d28000 CR3: 000000018d502000 CR4: 0000000000350ee0
[  996.724528] Call Trace:
[  996.724535]  smp_call_function_single+0x189/0x1d0
[  996.724545]  ? printk+0x64/0x7b
[  996.724552]  Controller_Start+0xe3/0x110 [corefreqk]
[  996.724573]  CoreFreqK_Ignition_Level_Up.cold+0x9c/0x1d8 [corefreqk]
[  996.724594]  ? 0xffffffffc0a3b000
[  996.724598]  CoreFreqK_StartUp+0xcf/0x12d [corefreqk]
[  996.724617]  ? CoreFreqK_Alloc_Public_Level_Down+0x20/0x20 [corefreqk]
[  996.724637]  ? Query_Features+0x80/0x80 [corefreqk]
[  996.724656]  ? CoreFreqK_Make_Device_Level_Up+0x40/0x40 [corefreqk]
[  996.724674]  ? CoreFreqK_Create_Device_Level_Up+0x60/0x60 [corefreqk]
[  996.724692]  ? CoreFreqK_ProbePCI+0x170/0x170 [corefreqk]
[  996.724709]  ? CoreFreqK_Alloc_Features_Level_Up+0x80/0x80 [corefreqk]
[  996.724726]  ? CoreFreqK_Alloc_Public_Level_Up+0x70/0x70 [corefreqk]
[  996.724744]  ? CoreFreqK_Alloc_Private_Level_Up+0x40/0x40 [corefreqk]
[  996.724761]  ? CoreFreqK_Alloc_Processor_RO_Level_Up+0xc0/0xc0 [corefreqk]
[  996.724778]  ? Compute_Interval+0xa0/0xa0 [corefreqk]
[  996.724796]  ? CoreFreqK_Alloc_Private_Cache_Level_Up+0x40/0x40 [corefreqk]
[  996.724813]  ? CoreFreqK_Alloc_Per_CPU_Level_Up+0x190/0x190 [corefreqk]
[  996.724831]  ? CoreFreqK_Alloc_Processor_RW_Level_Up+0xc0/0xc0 [corefreqk]
[  996.724848]  ? SMBIOS_Collect+0x290/0x290 [corefreqk]
[  996.724867]  ? Controller_Stop+0x110/0x110 [corefreqk]
[  996.724886]  CoreFreqK_Init+0x7/0x1000 [corefreqk]
[  996.724904]  do_one_initcall+0x5b/0x190
[  996.724910]  do_init_module+0x51/0x230
[  996.724916]  load_module+0x27dc/0x2980
[  996.724920]  ? m_show+0x1d0/0x1d0
[  996.724926]  __do_sys_init_module+0x17d/0x1c0
[  996.724931]  do_syscall_64+0x33/0x80
[  996.724935]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[  996.724941] RIP: 0033:0x7fd40424ad9e
[  996.724945] Code: 48 8b 0d d5 10 0c 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 49 89 ca b8 af 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d a2 10 0c 00 f7 d8 64 89 01 48
[  996.724949] RSP: 002b:00007ffc718cbb28 EFLAGS: 00000246 ORIG_RAX: 00000000000000af
[  996.724953] RAX: ffffffffffffffda RBX: 0000560ab2bf2bd0 RCX: 00007fd40424ad9e
[  996.724955] RDX: 0000560ab1a21270 RSI: 0000000000086668 RDI: 00007fd403be1010
[  996.724957] RBP: 00007fd403be1010 R08: 00007fd40472e000 R09: 0000000000000000
[  996.724960] R10: ffffffffffffffb8 R11: 0000000000000246 R12: 0000560ab1a21270
[  996.724962] R13: 0000000000000000 R14: 0000560ab2bf2cc0 R15: 0000560ab2bf2bd0
[  996.724965] Modules linked in: corefreqk(OE+) sch_fq_codel snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic vmmon(OE) vmw_vmci vboxnetflt(OE) vboxnetadp(OE) vboxdrv(OE) v4l2loopback videodev mc usbip_host usbip_core snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device cuse fuse netatop(OE) intel_atomisp2_pm haxm(OE) sg binfmt_misc acpi_call(OE) snd_sof_pci snd_sof_intel_hda_common snd_sof_intel_hda snd_sof_intel_byt snd_sof_intel_ipc snd_sof snd_sof_xtensa_dsp intel_telemetry_pltdrv snd_soc_skl intel_punit_ipc intel_telemetry_core intel_powerclamp snd_soc_hdac_hda kvm_intel snd_hda_ext_core kvm snd_soc_sst_ipc snd_soc_sst_dsp snd_soc_acpi_intel_match snd_soc_acpi irqbypass snd_hda_intel snd_intel_dspcfg soundwire_intel soundwire_generic_allocation soundwire_cadence snd_hda_codec snd_hda_core snd_hwdep soundwire_bus snd_soc_core iwlmvm r8169 btusb btrtl snd_compress btbcm ac97_bus realtek snd_pcm_dmaengine btintel mac80211 bluetooth snd_pcm
[  996.725034]  spi_pxa2xx_platform mdio_devres nxp_nci_i2c snd_timer iwlwifi nxp_nci ucsi_acpi of_mdio nci snd fixed_phy typec_ucsi intel_ish_ipc cfg80211 libphy intel_ishtp nfc rfkill_gpio soundcore typec i2c_hid rfkill tpm_crb tpm_tis tpm_tis_core intel_hid tpm mac_hid soc_button_array sparse_keymap uas usb_storage usbhid pcspkr sdhci_pci cqhci sdhci serio_raw mmc_core xhci_pci xhci_pci_renesas xhci_hcd
[  996.725079] ---[ end trace bfe68545bb08f02a ]---
[  999.288941] RIP: 0010:Start_Haswell_ULT+0x2bd/0x330 [corefreqk]
[  999.288988] Code: 48 09 d0 49 89 c0 4c 89 16 4c 89 5e 08 4c 89 66 10 4c 89 6e 20 4c 89 76 28 4c 89 7e 30 4c 89 4e 38 4c 89 46 40 b9 95 03 00 00 <0f> 32 48 8b 35 f2 c6 01 00 48 c1 e2 20 48 8b 0e 89 c0 48 09 c2 48
[  999.288991] RSP: 0018:ffffb9aa0bab7a58 EFLAGS: 00010046
[  999.288996] RAX: 0000000000000000 RBX: ffff9d4362dfd000 RCX: 0000000000000395
[  999.288998] RDX: 0000000000000000 RSI: ffff9d4302d38000 RDI: ffff9d430eceb780
[  999.289001] RBP: 0000000000000001 R08: 0000000000000000 R09: 0000000000000000
[  999.289003] R10: 000000f1541487d4 R11: 00000004c49f0766 R12: 0000000000000000
[  999.289005] R13: 0000006e02ffb1ef R14: 0000000000000000 R15: 0000000000000000
[  999.289007] FS:  00007fd40411e740(0000) GS:ffff9d4476c80000(0000) knlGS:0000000000000000
[  999.289010] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  999.289013] CR2: 00007fd403d28000 CR3: 000000018d502000 CR4: 0000000000350ee0
[  999.289016] note: modprobe[8546] exited with preempt_count 1

Version information

Installed the AUR package, version 1.84-1. Versions:

modinfo corefreqk:

filename:       /lib/modules/5.11.0-pf6-longcmdline-custom/kernel/drivers/misc/corefreqk.ko.zst
version:        1.84.1
license:        GPL
description:    CoreFreq Processor Driver
author:         CYRIL INGENIERIE <labs[at]cyring[dot]fr>
srcversion:     A12FF0DF21A293B9C198BB3
depends:        
retpoline:      Y
name:           corefreqk
vermagic:       5.11.0-pf6-longcmdline-custom SMP preempt mod_unload modversions 
parm:           ArchID:Force an architecture (ID) (int)
parm:           AutoClock:Estimate Clock Frequency 0:Spec; 1:Once; 2:Auto (int)
parm:           SleepInterval:Timer interval (ms) (uint)
parm:           TickInterval:System requested interval (ms) (uint)
parm:           Experimental:Enable features under development (int)
parm:           Target_Ratio_Unlock:1:Target Ratio Unlock; 0:Lock (short)
parm:           Clock_Ratio_Unlock:1:MinRatio; 2:MaxRatio; 3:Both Unlock (short)
parm:           Turbo_Ratio_Unlock:1:Turbo Ratio Unlock; 0:Lock (short)
parm:           Uncore_Ratio_Unlock:1:Uncore Ratio Unlock; 0:Lock (short)
parm:           ServiceProcessor:Select a CPU to run services with (int)
parm:           RDPMC_Enable:Enable RDPMC bit in CR4 register (ushort)
parm:           NMI_Disable:Disable the NMI Handler (ushort)
parm:           Override_SubCstate:Override Sub C-States (array of ushort)
parm:           PkgCStateLimit:Package C-State Limit (short)
parm:           IOMWAIT_Enable:I/O MWAIT Redirection Enable (short)
parm:           CStateIORedir:Power Mgmt IO Redirection C-State (short)
parm:           L1_HW_PREFETCH_Disable:Disable L1 HW Prefetcher (short)
parm:           L1_HW_IP_PREFETCH_Disable:Disable L1 HW IP Prefetcher (short)
parm:           L2_HW_PREFETCH_Disable:Disable L2 HW Prefetcher (short)
parm:           L2_HW_CL_PREFETCH_Disable:Disable L2 HW CL Prefetcher (short)
parm:           SpeedStep_Enable:Enable SpeedStep (short)
parm:           C1E_Enable:Enable SpeedStep C1E (short)
parm:           TurboBoost_Enable:Enable Turbo Boost (short)
parm:           C3A_Enable:Enable C3 Auto Demotion (short)
parm:           C1A_Enable:Enable C3 Auto Demotion (short)
parm:           C3U_Enable:Enable C3 UnDemotion (short)
parm:           C1U_Enable:Enable C1 UnDemotion (short)
parm:           CC6_Enable:Enable Core C6 State (short)
parm:           PC6_Enable:Enable Package C6 State (short)
parm:           ODCM_Enable:Enable On-Demand Clock Modulation (short)
parm:           ODCM_DutyCycle:ODCM DutyCycle [0-7] | [0-14] (short)
parm:           PowerMGMT_Unlock:Unlock Power Management (short)
parm:           PowerPolicy:Power Policy Preference [0-15] (short)
parm:           PState_FID:P-State Frequency Id (int)
parm:           PState_VID:P-State Voltage Id (int)
parm:           HWP_Enable:Hardware-Controlled Performance States (short)
parm:           HWP_EPP:Energy Performance Preference (short)
parm:           HDC_Enable:Hardware Duty Cycling (short)
parm:           R2H_Disable:Disable Race to Halt (short)
parm:           Clear_Events:Clear Thermal and Power Events (uint)
parm:           ThermalScope:[0:None; 1:SMT; 2:Core; 3:Package] (int)
parm:           VoltageScope:[0:None; 1:SMT; 2:Core; 3:Package] (int)
parm:           PowerScope:[0:None; 1:SMT; 2:Core; 3:Package] (int)
parm:           Register_CPU_Idle:Register the Kernel cpuidle driver (short)
parm:           Register_CPU_Freq:Register the Kernel cpufreq driver (short)
parm:           Register_Governor:Register the Kernel governor (short)
parm:           Register_ClockSource:Register Clock Source driver (short)
parm:           Idle_Route:[0:Default; 1:I/O; 2:HALT; 3:MWAIT] (short)
parm:           Mech_IBRS:Mitigation Mechanism IBRS (short)
parm:           Mech_STIBP:Mitigation Mechanism STIBP (short)
parm:           Mech_SSBD:Mitigation Mechanism SSBD (short)
parm:           Mech_IBPB:Mitigation Mechanism IBPB (short)
parm:           Mech_L1D_FLUSH:Mitigation Mechanism Cache L1D Flush (short)

More hardware details

dmidecode:

see → here.

hwinfo:
(too big to post here or upload to ix.io, thus not provided.)

dreirund commented 3 years ago

Addendum: corefreqk is loaded afterwards according to lsmod, and cannot be unloaded ("Module corefreqk is in use").

dreirund commented 3 years ago

Addendum 2 (the edit functionality here on github does not work for me, so I have to add posts):

corefreqd start up afterwards without complaining;
corefreqd -d:

CoreFreq Daemon 1.84.1  Copyright (C) 2015-2021 CYRIL INGENIERIE

  Processor [Intel(R) Celeron(R) N4100 CPU @ 1.10GHz]
  Architecture [Atom/Gemini Lake] 4/4 CPU Online.
  SleepInterval(1000), SysGate(2000), 2326 tasks

    CPU #000 @ 1094.41 MHz
    CPU #001 @ 1094.41 MHz
    CPU #002 @ 0.00 MHz
    CPU #003 @ 0.00 MHz
        NTFY || ....
    Thread [7f3482084640] Init CHILD 003
    Thread [7f3482084640] Init CYCLE 003
    Thread [7f3483086640] Init CHILD 001
    Thread [7f3482885640] Init CHILD 002
    Thread [7f3483086640] Init CYCLE 001
    Thread [7f3483887640] Init CHILD 000
    Thread [7f3483887640] Init CYCLE 000
    Thread [7f3482885640] Init CYCLE 002

corefreq-cli does not show any values different from zero:

 _  _  _  _  Processor [Intel(R) Celeron(R) N4100 CPU @ 1.10GHz    ]   4/4   CPU
| || || || | Architecture [Atom/Gemini Lake       ] Caches L1 Inst=32 Data=24 KB
|_||_||_||_| Base Clock ~ 000,000,000 Hz                   L2=4096   L3=0     KB
--- ! Relative frequency ---8-------11------------------------------------23--24
000~                                                                            
001                                                                             
002                                                                             
003                                                                             
--- Freq(MHz) Ratio - Turbo -- C0 ---- C1 -- C2:C3 - C4:C6 --- C7 -- Min TMP Max
000    0.00 ( 0.00)   0.00%   0.00%   0.00%   0.00%   0.00%   0.00%  44 /  0/ 44
001    0.00 ( 0.00)   0.00%   0.00%   0.00%   0.00%   0.00%   0.00%  0  /  0/  0
002    0.00 ( 0.00)   0.00%   0.00%   0.00%   0.00%   0.00%   0.00%  0  /  0/  0
003    0.00 ( 0.00)   0.00%   0.00%   0.00%   0.00%   0.00%   0.00%  0  /  0/  0
------ % Averages [   0.00%   0.00%   0.00%   0.00%   0.00%   0.00% ]-----------
Tech [TSC-INV,HTT,EIST,IDA,TURBO,C1E,PM4,C3A,C1A,C3U,C1U,TM,HOT] V[    ] T[  0C]
Linux [5.11.0]     Default string     Tasks [     0] Mem [        0/0        KB]

A subsequent invocation of corefreq-cli shows only empty fields (no zeros anymore), until I kill and restart corefreqd too:

             Processor [Intel(R) Celeron(R) N4100 CPU @ 1.10GHz    ]   4/4   CPU
 o  o  o  o  Architecture [Atom/Gemini Lake       ] Caches L1 Inst=32 Data=24 KB
 o  o  o  o  Base Clock ~ 000,000,000 Hz                   L2=4096   L3=0     KB
--- ! Relative frequency ---8-------11--12--------------------------------23--24
000                                                                             
001                                                                             
002                                                                             
003                                                                             
--- Freq(MHz) Ratio - Turbo -- C0 ---- C1 -- C2:C3 - C4:C6 --- C7 -- Min TMP Max
000                                                                             
001                                                                             
002                                                                             
003                                                                             
------ % Averages [                                                 ]-----------
Tech [TSC-INV,HTT,EIST,IDA,TURBO,C1E,PM4,C3A,C1A,C3U,C1U,TM,HOT] V[ .  ] T[   C]
Linux [5.11.0]     Default string     Tasks [     0] Mem [        0/0        KB]
cyring commented 3 years ago
  1. Start the driver, directly from the build directory, like:
    insmod corefreqk.ko ArchID=11
  2. If no issue dump into kernel log, proceed with Daemon and Client
dreirund commented 3 years ago

Hey,

*On Mon, 05 Apr 2021 03:58:47 -0700, CYRIL INGENIERIE @.**> wrote about "Re: [cyring/CoreFreq] modprobe corefreqk fails with system stall, Segmentation fault and trace in kernel log/ dmesg. (#227)":

  1. Start the driver, directly from the build directory, like:
    insmod corefreqk.ko ArchID=11
  2. If no issue dump into kernel log, proceed with Daemon and Client

Thanks for that instructions!

Though, I cannot do it right now, because I will not reboot my machine for some time. I need it for productivity, and reboot (instead of suspend to disk) would impact that. And without reboot I cannot reload the module.

So this has to wait some time.

Regards!

-- I'll catch you if you fall.

cyring commented 3 years ago

Looking at the RCX register = 0x395 is the Uncore fixed performance counter which exists since SandyBridge but not for Gemini Lake.

https://github.com/cyring/CoreFreq/blob/39953f71d2ed5cde1ec80c72c642f7f2c74d60ab/intelmsr.h#L113

Back tracing the call flow, MSR error may happen at this line:

https://github.com/cyring/CoreFreq/blob/39953f71d2ed5cde1ec80c72c642f7f2c74d60ab/corefreqk.c#L9357

That faulty MSR call has to be commented in corefreqk.c

#define PKG_Counters_Haswell_ULT(Core, T)               \
({                                  \
    RDTSCP_COUNTERx7(PUBLIC(RO(Proc))->Counter[T].PTSC,         \
        MSR_PKG_C2_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC02,\
        MSR_PKG_C3_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC03,\
        MSR_PKG_C6_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC06,\
        MSR_PKG_C7_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC07,\
        MSR_PKG_C8_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC08,\
        MSR_PKG_C9_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC09,\
        MSR_PKG_C10_RESIDENCY,PUBLIC(RO(Proc))->Counter[T].PC10);\
                                    \
/*  RDCOUNTER   (PUBLIC(RO(Proc))->Counter[T].Uncore.FC0,   \
            MSR_SNB_UNCORE_PERF_FIXED_CTR0 );*/     \
})

Sure, whenever you can and w/o Production running.

dreirund commented 3 years ago

First, for safety reasons I strongly recommend that the module fails to load on non-tested architectures unless some force-load module parameter is given.

On Mon, 05 Apr 2021 07:08:59 -0700, CYRIL INGENIERIE @.***> wrote about "Re: [cyring/CoreFreq] modprobe corefreqk fails with system stall, Segmentation fault and trace in kernel log/ dmesg. (#227)":

That faulty MSR call has to be commented in corefreqk.c

#define PKG_Counters_Haswell_ULT(Core, T)             \
({                                    \
    RDTSCP_COUNTERx7(PUBLIC(RO(Proc))->Counter[T].PTSC,           \
      MSR_PKG_C2_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC02,\
      MSR_PKG_C3_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC03,\
      MSR_PKG_C6_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC06,\
      MSR_PKG_C7_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC07,\
      MSR_PKG_C8_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC08,\
      MSR_PKG_C9_RESIDENCY, PUBLIC(RO(Proc))->Counter[T].PC09,\
      MSR_PKG_C10_RESIDENCY,PUBLIC(RO(Proc))->Counter[T].PC10);\
                                  \
/*    RDCOUNTER   (PUBLIC(RO(Proc))->Counter[T].Uncore.FC0,   \
          MSR_SNB_UNCORE_PERF_FIXED_CTR0 );*/     \
})

Attached a .patch which applies that changes,

  • Once above change applied,

'make clean make insmod corefreqk.ko` (on a freshly rebooted machine):

Works.

In dmesg, there is just

[  664.631402] CoreFreq(2:-1): Processor [ 06_7A] Architecture [Atom/Gemini Lake] CPU [4/4]

./corefreqd -d:

CoreFreq Daemon 1.84.1  Copyright (C) 2015-2021 CYRIL INGENIERIE

  Processor [Intel(R) Celeron(R) N4100 CPU @ 1.10GHz]
  Architecture [Atom/Gemini Lake] 4/4 CPU Online.
  SleepInterval(1000), SysGate(2000), 2326 tasks

    CPU #000 @ 1094.40 MHz
    CPU #001 @ 1094.40 MHz
    CPU #002 @ 1094.40 MHz
    CPU #003 @ 1094.40 MHz
        NTFY || ....
    Thread [7fd59636d640] Init CHILD 003
    Thread [7fd59736f640] Init CYCLE 001
    Thread [7fd596b6e640] Init CHILD 002
    Thread [7fd596b6e640] Init CYCLE 002
    Thread [7fd59736f640] Init CHILD 001
    Thread [7fd597b70640] Init CYCLE 000
    Thread [7fd59636d640] Init CYCLE 003
    Thread [7fd597b70640] Init CHILD 000

./corefreq-cli seems to show useful stuff; I haven't looked into everything; voltage and power readings for example stay empty.

-- Machen ist wie wollen, nur krasser.

dreirund commented 3 years ago

On Mon, 05 Apr 2021 03:58:47 -0700, CYRIL INGENIERIE @.***> wrote about "Re: [cyring/CoreFreq] modprobe corefreqk fails with system stall, Segmentation fault and trace in kernel log/ dmesg. (#227)":

  1. Start the driver, directly from the build directory, like:
    insmod corefreqk.ko ArchID=11

cd /usr/src/corefreqk-1.84+r1306.20210228.39953f7
make
insmod corefreqk.ko ArchID=11:

Segmentation fault

In kernel log, dmesg:

[  773.752332] general protection fault: 0000 [#1] PREEMPT SMP PTI
[  773.752343] CPU: 2 PID: 5819 Comm: insmod Tainted: G           OE     5.11.0-pf6-longcmdline-custom #1
[  773.752348] Hardware name: GPD MicroPC/Default string, BIOS 4.10 06/14/2019
[  773.752350] RIP: 0010:BaseClock_Core+0x8/0x80 [corefreqk]
[  773.752372] Code: 00 00 48 89 f8 48 c7 07 64 00 00 00 48 c7 47 08 00 00 00 00 48 c7 47 10 00 e1 f5 05 c3 0f 1f 44 00 00 49 89 f8 b9 cd 00 00 00 <0f> 32 83 e0 07 3c 01 89 f6 74 3f 3c 03 75 20 48 69 f6 0a 1a 00 00
[  773.752375] RSP: 0018:ffff9fc1025a7a88 EFLAGS: 00010286
[  773.752380] RAX: ffffffffc0cfb130 RBX: ffff9fc1025a7bb8 RCX: 00000000000000cd
[  773.752383] RDX: 000000000000000b RSI: 000000000000000b RDI: ffff9fc1025a7aa0
[  773.752385] RBP: ffff9fc1025a7b40 R08: ffff9fc1025a7aa0 R09: 0000000000000000
[  773.752387] R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000004
[  773.752389] R13: 000000000000000b R14: 0000000000000000 R15: 0000000000000000
[  773.752391] FS:  00007fdc3e402740(0000) GS:ffff9332f6d00000(0000) knlGS:0000000000000000
[  773.752394] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  773.752397] CR2: 00007fdc3e5c4730 CR3: 000000016cdc8000 CR4: 0000000000350ee0
[  773.752400] Call Trace:
[  773.752405]  Controller_Init+0x143/0x490 [corefreqk]
[  773.752429]  CoreFreqK_Ignition_Level_Up+0x1e8/0x7d7 [corefreqk]
[  773.752449]  ? 0xffffffffc0b69000
[  773.752453]  CoreFreqK_StartUp+0xcf/0x12d [corefreqk]
[  773.752472]  ? CoreFreqK_Alloc_Public_Level_Down+0x20/0x20 [corefreqk]
[  773.752491]  ? Query_Features+0x80/0x80 [corefreqk]
[  773.752510]  ? CoreFreqK_Make_Device_Level_Up+0x40/0x40 [corefreqk]
[  773.752528]  ? CoreFreqK_Create_Device_Level_Up+0x60/0x60 [corefreqk]
[  773.752545]  ? CoreFreqK_ProbePCI+0x170/0x170 [corefreqk]
[  773.752562]  ? CoreFreqK_Alloc_Features_Level_Up+0x80/0x80 [corefreqk]
[  773.752579]  ? CoreFreqK_Alloc_Public_Level_Up+0x70/0x70 [corefreqk]
[  773.752596]  ? CoreFreqK_Alloc_Private_Level_Up+0x40/0x40 [corefreqk]
[  773.752613]  ? CoreFreqK_Alloc_Processor_RO_Level_Up+0xc0/0xc0 [corefreqk]
[  773.752629]  ? Compute_Interval+0xa0/0xa0 [corefreqk]
[  773.752647]  ? CoreFreqK_Alloc_Private_Cache_Level_Up+0x40/0x40 [corefreqk]
[  773.752664]  ? CoreFreqK_Alloc_Per_CPU_Level_Up+0x190/0x190 [corefreqk]
[  773.752681]  ? CoreFreqK_Alloc_Processor_RW_Level_Up+0xc0/0xc0 [corefreqk]
[  773.752698]  ? SMBIOS_Collect+0x290/0x290 [corefreqk]
[  773.752717]  ? Controller_Stop+0x110/0x110 [corefreqk]
[  773.752736]  CoreFreqK_Init+0x7/0x1000 [corefreqk]
[  773.752754]  do_one_initcall+0x5b/0x190
[  773.752763]  do_init_module+0x51/0x230
[  773.752769]  load_module+0x27dc/0x2980
[  773.752774]  ? m_show+0x1d0/0x1d0
[  773.752779]  __do_sys_finit_module+0xb7/0x120
[  773.752785]  do_syscall_64+0x33/0x80
[  773.752791]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[  773.752797] RIP: 0033:0x7fdc3e528a9d
[  773.752800] Code: bb 0c 00 0f 05 eb a9 66 0f 1f 44 00 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d a3 73 0c 00 f7 d8 64 89 01 48
[  773.752803] RSP: 002b:00007ffd615a6df8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[  773.752807] RAX: ffffffffffffffda RBX: 0000564254bf6830 RCX: 00007fdc3e528a9d
[  773.752810] RDX: 0000000000000000 RSI: 0000564254bf62a0 RDI: 0000000000000003
[  773.752812] RBP: 0000000000000000 R08: 0000000000000000 R09: 00007ffd615a6fb8
[  773.752814] R10: 0000000000000003 R11: 0000000000000246 R12: 0000564254bf62a0
[  773.752816] R13: 0000000000000000 R14: 0000564254bf67e0 R15: 0000564254bf62a0
[  773.752819] Modules linked in: corefreqk(OE+) sch_fq_codel snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic vmmon(OE) vmw_vmci vboxnetflt(OE) vboxnetadp(OE) vboxdrv(OE) v4l2loopback videodev mc usbip_host usbip_core snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device cuse fuse netatop(OE) intel_atomisp2_pm haxm(OE) sg binfmt_misc acpi_call(OE) snd_sof_pci snd_sof_intel_hda_common snd_sof_intel_hda snd_sof_intel_byt snd_sof_intel_ipc snd_sof snd_sof_xtensa_dsp snd_soc_skl intel_telemetry_pltdrv intel_punit_ipc intel_telemetry_core snd_soc_hdac_hda intel_powerclamp snd_hda_ext_core snd_soc_sst_ipc snd_soc_sst_dsp snd_soc_acpi_intel_match kvm_intel snd_soc_acpi r8153_ecm snd_hda_intel cdc_ether kvm snd_intel_dspcfg soundwire_intel usbnet r8152 irqbypass soundwire_generic_allocation soundwire_cadence spi_pxa2xx_platform mii snd_hda_codec snd_hda_core iwlmvm snd_hwdep soundwire_bus mac80211 snd_soc_core r8169 btusb btrtl realtek btbcm mdio_devres
[  773.752892]  btintel snd_compress bluetooth iwlwifi ac97_bus of_mdio snd_pcm_dmaengine fixed_phy snd_pcm libphy nxp_nci_i2c cfg80211 nxp_nci snd_timer nci intel_ish_ipc snd ucsi_acpi intel_ishtp nfc typec_ucsi rfkill_gpio soundcore tpm_crb typec i2c_hid rfkill tpm_tis mac_hid tpm_tis_core soc_button_array tpm intel_hid sparse_keymap uas usb_storage usbhid pcspkr sdhci_pci cqhci sdhci serio_raw mmc_core xhci_pci xhci_pci_renesas xhci_hcd
[  773.752939] ---[ end trace f59a783be914e220 ]---
[  773.754992] ------------[ cut here ]------------
[  773.754995] WARNING: CPU: 2 PID: 5819 at kernel/rcu/tree_plugin.h:297 rcu_note_context_switch+0x30/0x440
[  773.755004] Modules linked in: corefreqk(OE+) sch_fq_codel snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic vmmon(OE) vmw_vmci vboxnetflt(OE) vboxnetadp(OE) vboxdrv(OE) v4l2loopback videodev mc usbip_host usbip_core snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device cuse fuse netatop(OE) intel_atomisp2_pm haxm(OE) sg binfmt_misc acpi_call(OE) snd_sof_pci snd_sof_intel_hda_common snd_sof_intel_hda snd_sof_intel_byt snd_sof_intel_ipc snd_sof snd_sof_xtensa_dsp snd_soc_skl intel_telemetry_pltdrv intel_punit_ipc intel_telemetry_core snd_soc_hdac_hda intel_powerclamp snd_hda_ext_core snd_soc_sst_ipc snd_soc_sst_dsp snd_soc_acpi_intel_match kvm_intel snd_soc_acpi r8153_ecm snd_hda_intel cdc_ether kvm snd_intel_dspcfg soundwire_intel usbnet r8152 irqbypass soundwire_generic_allocation soundwire_cadence spi_pxa2xx_platform mii snd_hda_codec snd_hda_core iwlmvm snd_hwdep soundwire_bus mac80211 snd_soc_core r8169 btusb btrtl realtek btbcm mdio_devres
[  773.756421]  btintel snd_compress bluetooth iwlwifi ac97_bus of_mdio snd_pcm_dmaengine fixed_phy snd_pcm libphy nxp_nci_i2c cfg80211 nxp_nci snd_timer nci intel_ish_ipc snd ucsi_acpi intel_ishtp nfc typec_ucsi rfkill_gpio soundcore tpm_crb typec i2c_hid rfkill tpm_tis mac_hid tpm_tis_core soc_button_array tpm intel_hid sparse_keymap uas usb_storage usbhid pcspkr sdhci_pci cqhci sdhci serio_raw mmc_core xhci_pci xhci_pci_renesas xhci_hcd
[  773.756460] CPU: 2 PID: 5819 Comm: insmod Tainted: G      D    OE     5.11.0-pf6-longcmdline-custom #1
[  773.756463] Hardware name: GPD MicroPC/Default string, BIOS 4.10 06/14/2019
[  773.756466] RIP: 0010:rcu_note_context_switch+0x30/0x440
[  773.756471] Code: fd 53 48 c7 c3 c0 e8 02 00 65 4c 8b 2c 25 00 6d 01 00 65 48 03 1d 88 48 04 55 40 84 ff 75 0d 41 8b 8d ec 03 00 00 85 c9 7e 02 <0f> 0b 65 48 8b 04 25 00 6d 01 00 8b 90 ec 03 00 00 85 d2 7e 0a 41
[  773.756474] RSP: 0018:ffff9fc1025a7480 EFLAGS: 00010002
[  773.756477] RAX: 0000000000000001 RBX: ffff9332f6d2e8c0 RCX: 0000000000000001
[  773.756479] RDX: ffffffffaf9f0d48 RSI: ffffffffabf174b6 RDI: 0000000000000000
[  773.756482] RBP: 0000000000000000 R08: 0000000000000042 R09: 0000000000000400
[  773.756484] R10: 0000000000000000 R11: 0000000000000003 R12: ffff9332f6d2db00
[  773.756486] R13: ffff9331f0e05a00 R14: 0000000000000000 R15: ffff9331f0e05a00
[  773.756488] FS:  00007fdc3e402740(0000) GS:ffff9332f6d00000(0000) knlGS:0000000000000000
[  773.756491] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  773.756493] CR2: 00007fdc3e5c4730 CR3: 000000016cdc8000 CR4: 0000000000350ee0
[  773.756496] Call Trace:
[  773.756500]  __schedule+0xa4/0xc10
[  773.756507]  schedule+0x56/0xc0
[  773.756511]  schedule_timeout+0x2a5/0x390
[  773.756516]  wait_for_completion+0x9a/0xf0
[  773.756520]  virt_efi_query_variable_info+0x13e/0x150
[  773.756527]  efi_query_variable_store+0x8e/0x200
[  773.756534]  ? vsnprintf+0x6e/0x600
[  773.756539]  efivar_entry_set_safe+0xbb/0x210
[  773.756544]  efi_pstore_write+0x18d/0x260
[  773.756549]  pstore_dump+0x128/0x350
[  773.756556]  kmsg_dump+0x8f/0xd0
[  773.756561]  oops_end+0x5b/0xb0
[  773.756565]  exc_general_protection+0x205/0x370
[  773.756570]  asm_exc_general_protection+0x1e/0x30
[  773.756575] RIP: 0010:BaseClock_Core+0x8/0x80 [corefreqk]
[  773.756596] Code: 00 00 48 89 f8 48 c7 07 64 00 00 00 48 c7 47 08 00 00 00 00 48 c7 47 10 00 e1 f5 05 c3 0f 1f 44 00 00 49 89 f8 b9 cd 00 00 00 <0f> 32 83 e0 07 3c 01 89 f6 74 3f 3c 03 75 20 48 69 f6 0a 1a 00 00
[  773.756598] RSP: 0018:ffff9fc1025a7a88 EFLAGS: 00010286
[  773.756601] RAX: ffffffffc0cfb130 RBX: ffff9fc1025a7bb8 RCX: 00000000000000cd
[  773.756604] RDX: 000000000000000b RSI: 000000000000000b RDI: ffff9fc1025a7aa0
[  773.756606] RBP: ffff9fc1025a7b40 R08: ffff9fc1025a7aa0 R09: 0000000000000000
[  773.756608] R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000004
[  773.756610] R13: 000000000000000b R14: 0000000000000000 R15: 0000000000000000
[  773.756613]  ? BaseClock_AuthenticAMD+0x20/0x20 [corefreqk]
[  773.756632]  Controller_Init+0x143/0x490 [corefreqk]
[  773.756652]  CoreFreqK_Ignition_Level_Up+0x1e8/0x7d7 [corefreqk]
[  773.756673]  ? 0xffffffffc0b69000
[  773.756675]  CoreFreqK_StartUp+0xcf/0x12d [corefreqk]
[  773.756694]  ? CoreFreqK_Alloc_Public_Level_Down+0x20/0x20 [corefreqk]
[  773.756712]  ? Query_Features+0x80/0x80 [corefreqk]
[  773.756731]  ? CoreFreqK_Make_Device_Level_Up+0x40/0x40 [corefreqk]
[  773.756749]  ? CoreFreqK_Create_Device_Level_Up+0x60/0x60 [corefreqk]
[  773.756767]  ? CoreFreqK_ProbePCI+0x170/0x170 [corefreqk]
[  773.756784]  ? CoreFreqK_Alloc_Features_Level_Up+0x80/0x80 [corefreqk]
[  773.756800]  ? CoreFreqK_Alloc_Public_Level_Up+0x70/0x70 [corefreqk]
[  773.756817]  ? CoreFreqK_Alloc_Private_Level_Up+0x40/0x40 [corefreqk]
[  773.756868]  ? CoreFreqK_Alloc_Processor_RO_Level_Up+0xc0/0xc0 [corefreqk]
[  773.756887]  ? Compute_Interval+0xa0/0xa0 [corefreqk]
[  773.756906]  ? CoreFreqK_Alloc_Private_Cache_Level_Up+0x40/0x40 [corefreqk]
[  773.756925]  ? CoreFreqK_Alloc_Per_CPU_Level_Up+0x190/0x190 [corefreqk]
[  773.756943]  ? CoreFreqK_Alloc_Processor_RW_Level_Up+0xc0/0xc0 [corefreqk]
[  773.756962]  ? SMBIOS_Collect+0x290/0x290 [corefreqk]
[  773.757010]  ? Controller_Stop+0x110/0x110 [corefreqk]
[  773.757029]  CoreFreqK_Init+0x7/0x1000 [corefreqk]
[  773.757047]  do_one_initcall+0x5b/0x190
[  773.757053]  do_init_module+0x51/0x230
[  773.757058]  load_module+0x27dc/0x2980
[  773.757062]  ? m_show+0x1d0/0x1d0
[  773.757068]  __do_sys_finit_module+0xb7/0x120
[  773.757073]  do_syscall_64+0x33/0x80
[  773.757076]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[  773.757080] RIP: 0033:0x7fdc3e528a9d
[  773.757083] Code: bb 0c 00 0f 05 eb a9 66 0f 1f 44 00 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d a3 73 0c 00 f7 d8 64 89 01 48
[  773.757086] RSP: 002b:00007ffd615a6df8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[  773.757089] RAX: ffffffffffffffda RBX: 0000564254bf6830 RCX: 00007fdc3e528a9d
[  773.757091] RDX: 0000000000000000 RSI: 0000564254bf62a0 RDI: 0000000000000003
[  773.757094] RBP: 0000000000000000 R08: 0000000000000000 R09: 00007ffd615a6fb8
[  773.757096] R10: 0000000000000003 R11: 0000000000000246 R12: 0000564254bf62a0
[  773.757098] R13: 0000000000000000 R14: 0000564254bf67e0 R15: 0000564254bf62a0
[  773.757101] ---[ end trace f59a783be914e221 ]---
[  775.054456] RIP: 0010:BaseClock_Core+0x8/0x80 [corefreqk]
[  775.054500] Code: 00 00 48 89 f8 48 c7 07 64 00 00 00 48 c7 47 08 00 00 00 00 48 c7 47 10 00 e1 f5 05 c3 0f 1f 44 00 00 49 89 f8 b9 cd 00 00 00 <0f> 32 83 e0 07 3c 01 89 f6 74 3f 3c 03 75 20 48 69 f6 0a 1a 00 00
[  775.054504] RSP: 0018:ffff9fc1025a7a88 EFLAGS: 00010286
[  775.054509] RAX: ffffffffc0cfb130 RBX: ffff9fc1025a7bb8 RCX: 00000000000000cd
[  775.054512] RDX: 000000000000000b RSI: 000000000000000b RDI: ffff9fc1025a7aa0
[  775.054895] RBP: ffff9fc1025a7b40 R08: ffff9fc1025a7aa0 R09: 0000000000000000
[  775.054899] R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000004
[  775.054901] R13: 000000000000000b R14: 0000000000000000 R15: 0000000000000000
[  775.054903] FS:  00007fdc3e402740(0000) GS:ffff9332f6d80000(0000) knlGS:0000000000000000
[  775.054906] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  775.054908] CR2: 00007ffe6a188c80 CR3: 000000016cdc8000 CR4:
0000000000350ee0

-- Machen ist wie wollen, nur krasser.

cyring commented 3 years ago

According to the Intel SDM: 2021-04-05-225612_866x145_scrot

So I'm now routing all Gemini Lake entries to Silvermont.

Can you please try the new version 1.84.4 of CoreFreq in the develop branch ?

cyring commented 3 years ago

I understand it's a lot asking to try again and risk another crash, but it will help the project if you can run the develop branch in which I have made that Gemini Lake as a basic Silvermont because they are sharing the same registers, according to the SDM specs.

dreirund commented 3 years ago

On Mon, 05 Apr 2021 14:00:12 -0700, CYRIL INGENIERIE @.***> wrote about "Re: [cyring/CoreFreq] modprobe corefreqk fails with system stall, Segmentation fault and trace in kernel log/ dmesg. (#227)":

Can you please try the new version 1.84.4 of CoreFreq in the develop branch ?

Can you tell me how I get this branch? I don't know git more than git clone and git pull.

-- ich warte gerne [...] Wenn ich warten muss, da hab' ich ja viel Zeit.

(Quelle: Peter Lustig, http://youtube.com/watch?v=5ippbVCKbjQ&t=113)

cyring commented 3 years ago
dreirund commented 3 years ago

On Mon, 05 Apr 2021 14:00:12 -0700, CYRIL INGENIERIE @.***> wrote about "Re: [cyring/CoreFreq] modprobe corefreqk fails with system stall, Segmentation fault and trace in kernel log/ dmesg. (#227)":

Can you please try the new version 1.84.4 of CoreFreq in the develop branch ?

git clone https://github.com/cyring/CoreFreq --branch develop cd CoreFreq make insmod ./corefreqk.ko

Segmentation Fault

In dmesg:

[ 7785.073412] general protection fault: 0000 [#1] PREEMPT SMP PTI
[ 7785.073423] CPU: 0 PID: 5451 Comm: insmod Tainted: G           OE     5.11.0-pf6-longcmdline-custom #1
[ 7785.073428] Hardware name: GPD MicroPC/Default string, BIOS 4.10 06/14/2019
[ 7785.073430] RIP: 0010:BaseClock_Silvermont+0x8/0x60 [corefreqk]
[ 7785.073452] Code: af f0 49 89 10 49 89 48 10 4c 89 c0 49 89 70 08 c3 b9 b4 90 f7 04 b8 05 0d 00 00 ba 53 00 00 00 eb da 49 89 f8 b9 cd 00 00 00 <0f> 32 83 e0 07 3c 04 77 3b 0f b6 c0 48 8b 14 c5 80 3d c2 c0 48 8b
[ 7785.073456] RSP: 0018:ffff9f810af0fa88 EFLAGS: 00010282
[ 7785.073460] RAX: ffffffffc0bf32e0 RBX: ffff9f810af0fbb8 RCX: 00000000000000cd
[ 7785.073463] RDX: 0000000000000037 RSI: 000000000000000b RDI: ffff9f810af0faa0
[ 7785.073465] RBP: ffff9f810af0fb40 R08: ffff9f810af0faa0 R09: 0000000000000000
[ 7785.073467] R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000004
[ 7785.073469] R13: 000000000000000b R14: ffff8f4cf2a4a000 R15: 0000000000000000
[ 7785.073472] FS:  00007ffb88ba3740(0000) GS:ffff8f4cf6c00000(0000) knlGS:0000000000000000
[ 7785.073475] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 7785.073477] CR2: 00007ffb88d65730 CR3: 0000000269e50000 CR4: 0000000000350ef0
[ 7785.073480] Call Trace:
[ 7785.073485]  Controller_Init+0x143/0x490 [corefreqk]
[ 7785.073508]  CoreFreqK_Ignition_Level_Up+0x1e8/0x7d7 [corefreqk]
[ 7785.073529]  ? 0xffffffffc0c45000
[ 7785.073532]  CoreFreqK_StartUp+0xcf/0x12d [corefreqk]
[ 7785.073551]  ? CoreFreqK_Alloc_Public_Level_Down+0x20/0x20 [corefreqk]
[ 7785.073569]  ? Query_Features+0x80/0x80 [corefreqk]
[ 7785.073588]  ? CoreFreqK_Make_Device_Level_Up+0x40/0x40 [corefreqk]
[ 7785.073606]  ? CoreFreqK_Create_Device_Level_Up+0x60/0x60 [corefreqk]
[ 7785.073623]  ? CoreFreqK_ProbePCI+0x170/0x170 [corefreqk]
[ 7785.073640]  ? CoreFreqK_Alloc_Features_Level_Up+0x80/0x80 [corefreqk]
[ 7785.073656]  ? CoreFreqK_Alloc_Public_Level_Up+0x70/0x70 [corefreqk]
[ 7785.073673]  ? CoreFreqK_Alloc_Private_Level_Up+0x40/0x40 [corefreqk]
[ 7785.073690]  ? CoreFreqK_Alloc_Processor_RO_Level_Up+0xc0/0xc0 [corefreqk]
[ 7785.073707]  ? Compute_Interval+0xa0/0xa0 [corefreqk]
[ 7785.073725]  ? CoreFreqK_Alloc_Private_Cache_Level_Up+0x40/0x40 [corefreqk]
[ 7785.073742]  ? CoreFreqK_Alloc_Per_CPU_Level_Up+0x190/0x190 [corefreqk]
[ 7785.073759]  ? CoreFreqK_Alloc_Processor_RW_Level_Up+0xc0/0xc0 [corefreqk]
[ 7785.073775]  ? SMBIOS_Collect+0x290/0x290 [corefreqk]
[ 7785.073794]  ? Controller_Stop+0x110/0x110 [corefreqk]
[ 7785.073812]  CoreFreqK_Init+0x7/0x1000 [corefreqk]
[ 7785.073832]  do_one_initcall+0x5b/0x190
[ 7785.073840]  do_init_module+0x51/0x230
[ 7785.073847]  load_module+0x27dc/0x2980
[ 7785.073851]  ? m_show+0x1d0/0x1d0
[ 7785.073857]  __do_sys_finit_module+0xb7/0x120
[ 7785.073862]  do_syscall_64+0x33/0x80
[ 7785.073868]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 7785.073875] RIP: 0033:0x7ffb88cc9a9d
[ 7785.073879] Code: bb 0c 00 0f 05 eb a9 66 0f 1f 44 00 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d a3 73 0c 00 f7 d8 64 89 01 48
[ 7785.073882] RSP: 002b:00007fffca7f4b78 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[ 7785.073886] RAX: ffffffffffffffda RBX: 0000564625dc77c0 RCX: 00007ffb88cc9a9d
[ 7785.073889] RDX: 0000000000000000 RSI: 0000564624eb7270 RDI: 0000000000000003
[ 7785.073891] RBP: 0000000000000000 R08: 0000000000000000 R09: 00007ffb88d95380
[ 7785.073893] R10: 0000000000000003 R11: 0000000000000246 R12: 0000564624eb7270
[ 7785.073895] R13: 0000000000000000 R14: 0000564625dca1f0 R15: 0000000000000000
[ 7785.073898] Modules linked in: corefreqk(OE+) r8153_ecm cdc_ether usbnet r8152 mii sch_fq_codel vmmon(OE) vmw_vmci vboxnetflt(OE) vboxnetadp(OE) vboxdrv(OE) v4l2loopback videodev mc usbip_host usbip_core snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device cuse fuse netatop(OE) intel_atomisp2_pm haxm(OE) sg binfmt_misc acpi_call(OE) snd_hda_codec_hdmi snd_sof_pci snd_sof_intel_hda_common snd_hda_codec_realtek snd_sof_intel_hda snd_sof_intel_byt snd_hda_codec_generic snd_sof_intel_ipc intel_telemetry_pltdrv snd_sof intel_punit_ipc intel_telemetry_core intel_powerclamp snd_sof_xtensa_dsp snd_soc_skl kvm_intel snd_soc_hdac_hda snd_hda_ext_core snd_soc_sst_ipc kvm snd_soc_sst_dsp snd_soc_acpi_intel_match snd_soc_acpi snd_hda_intel irqbypass snd_intel_dspcfg soundwire_intel soundwire_generic_allocation soundwire_cadence snd_hda_codec snd_hda_core snd_hwdep soundwire_bus snd_soc_core btusb btrtl btbcm snd_compress btintel ac97_bus snd_pcm_dmaengine iwlmvm r8169
[ 7785.073969]  bluetooth realtek snd_pcm mdio_devres mac80211 snd_timer iwlwifi spi_pxa2xx_platform of_mdio ucsi_acpi nxp_nci_i2c fixed_phy typec_ucsi snd nxp_nci cfg80211 libphy soundcore typec intel_ish_ipc nci intel_ishtp tpm_crb rfkill_gpio nfc rfkill i2c_hid tpm_tis mac_hid tpm_tis_core intel_hid soc_button_array tpm sparse_keymap uas usb_storage usbhid pcspkr sdhci_pci cqhci sdhci serio_raw xhci_pci xhci_pci_renesas mmc_core xhci_hcd
[ 7785.074017] ---[ end trace f0954e50005e5ae1 ]---
[ 7785.076267] ------------[ cut here ]------------
[ 7785.076270] WARNING: CPU: 0 PID: 5451 at kernel/rcu/tree_plugin.h:297 rcu_note_context_switch+0x30/0x440
[ 7785.076278] Modules linked in: corefreqk(OE+) r8153_ecm cdc_ether usbnet r8152 mii sch_fq_codel vmmon(OE) vmw_vmci vboxnetflt(OE) vboxnetadp(OE) vboxdrv(OE) v4l2loopback videodev mc usbip_host usbip_core snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device cuse fuse netatop(OE) intel_atomisp2_pm haxm(OE) sg binfmt_misc acpi_call(OE) snd_hda_codec_hdmi snd_sof_pci snd_sof_intel_hda_common snd_hda_codec_realtek snd_sof_intel_hda snd_sof_intel_byt snd_hda_codec_generic snd_sof_intel_ipc intel_telemetry_pltdrv snd_sof intel_punit_ipc intel_telemetry_core intel_powerclamp snd_sof_xtensa_dsp snd_soc_skl kvm_intel snd_soc_hdac_hda snd_hda_ext_core snd_soc_sst_ipc kvm snd_soc_sst_dsp snd_soc_acpi_intel_match snd_soc_acpi snd_hda_intel irqbypass snd_intel_dspcfg soundwire_intel soundwire_generic_allocation soundwire_cadence snd_hda_codec snd_hda_core snd_hwdep soundwire_bus snd_soc_core btusb btrtl btbcm snd_compress btintel ac97_bus snd_pcm_dmaengine iwlmvm r8169
[ 7785.078029]  bluetooth realtek snd_pcm mdio_devres mac80211 snd_timer iwlwifi spi_pxa2xx_platform of_mdio ucsi_acpi nxp_nci_i2c fixed_phy typec_ucsi snd nxp_nci cfg80211 libphy soundcore typec intel_ish_ipc nci intel_ishtp tpm_crb rfkill_gpio nfc rfkill i2c_hid tpm_tis mac_hid tpm_tis_core intel_hid soc_button_array tpm sparse_keymap uas usb_storage usbhid pcspkr sdhci_pci cqhci sdhci serio_raw xhci_pci xhci_pci_renesas mmc_core xhci_hcd
[ 7785.078069] CPU: 0 PID: 5451 Comm: insmod Tainted: G      D    OE     5.11.0-pf6-longcmdline-custom #1
[ 7785.078072] Hardware name: GPD MicroPC/Default string, BIOS 4.10 06/14/2019
[ 7785.078075] RIP: 0010:rcu_note_context_switch+0x30/0x440
[ 7785.078080] Code: fd 53 48 c7 c3 c0 e8 02 00 65 4c 8b 2c 25 00 6d 01 00 65 48 03 1d 88 48 84 6a 40 84 ff 75 0d 41 8b 8d ec 03 00 00 85 c9 7e 02 <0f> 0b 65 48 8b 04 25 00 6d 01 00 8b 90 ec 03 00 00 85 d2 7e 0a 41
[ 7785.078083] RSP: 0018:ffff9f810af0f480 EFLAGS: 00010002
[ 7785.078086] RAX: 0000000000000001 RBX: ffff8f4cf6c2e8c0 RCX: 0000000000000001
[ 7785.078089] RDX: ffffffff9a1f0d48 RSI: ffffffff967174b6 RDI: 0000000000000000
[ 7785.078091] RBP: 0000000000000000 R08: 0000000000000039 R09: 0000000000000400
[ 7785.078093] R10: 0000000000000000 R11: 0000000000000006 R12: ffff8f4cf6c2db00
[ 7785.078095] R13: ffff8f4b824e3c00 R14: 0000000000000000 R15: ffff8f4b824e3c00
[ 7785.078098] FS:  00007ffb88ba3740(0000) GS:ffff8f4cf6c00000(0000) knlGS:0000000000000000
[ 7785.078100] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 7785.078103] CR2: 00007ffb88d65730 CR3: 0000000269e50000 CR4: 0000000000350ef0
[ 7785.078105] Call Trace:
[ 7785.078108]  __schedule+0xa4/0xc10
[ 7785.078115]  schedule+0x56/0xc0
[ 7785.078119]  schedule_timeout+0x2a5/0x390
[ 7785.078124]  wait_for_completion+0x9a/0xf0
[ 7785.078128]  virt_efi_query_variable_info+0x13e/0x150
[ 7785.078135]  efi_query_variable_store+0x8e/0x200
[ 7785.078141]  ? vsnprintf+0x6e/0x600
[ 7785.078146]  efivar_entry_set_safe+0xbb/0x210
[ 7785.078151]  efi_pstore_write+0x18d/0x260
[ 7785.078157]  pstore_dump+0x128/0x350
[ 7785.078163]  kmsg_dump+0x8f/0xd0
[ 7785.078169]  oops_end+0x5b/0xb0
[ 7785.078173]  exc_general_protection+0x205/0x370
[ 7785.078178]  asm_exc_general_protection+0x1e/0x30
[ 7785.078182] RIP: 0010:BaseClock_Silvermont+0x8/0x60 [corefreqk]
[ 7785.078203] Code: af f0 49 89 10 49 89 48 10 4c 89 c0 49 89 70 08 c3 b9 b4 90 f7 04 b8 05 0d 00 00 ba 53 00 00 00 eb da 49 89 f8 b9 cd 00 00 00 <0f> 32 83 e0 07 3c 04 77 3b 0f b6 c0 48 8b 14 c5 80 3d c2 c0 48 8b
[ 7785.078206] RSP: 0018:ffff9f810af0fa88 EFLAGS: 00010282
[ 7785.078209] RAX: ffffffffc0bf32e0 RBX: ffff9f810af0fbb8 RCX: 00000000000000cd
[ 7785.078211] RDX: 0000000000000037 RSI: 000000000000000b RDI: ffff9f810af0faa0
[ 7785.078213] RBP: ffff9f810af0fb40 R08: ffff9f810af0faa0 R09: 0000000000000000
[ 7785.078216] R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000004
[ 7785.078218] R13: 000000000000000b R14: ffff8f4cf2a4a000 R15: 0000000000000000
[ 7785.078221]  ? BaseClock_Airmont+0x60/0x60 [corefreqk]
[ 7785.078239]  Controller_Init+0x143/0x490 [corefreqk]
[ 7785.078259]  CoreFreqK_Ignition_Level_Up+0x1e8/0x7d7 [corefreqk]
[ 7785.078279]  ? 0xffffffffc0c45000
[ 7785.078282]  CoreFreqK_StartUp+0xcf/0x12d [corefreqk]
[ 7785.078300]  ? CoreFreqK_Alloc_Public_Level_Down+0x20/0x20 [corefreqk]
[ 7785.078318]  ? Query_Features+0x80/0x80 [corefreqk]
[ 7785.078337]  ? CoreFreqK_Make_Device_Level_Up+0x40/0x40 [corefreqk]
[ 7785.078354]  ? CoreFreqK_Create_Device_Level_Up+0x60/0x60 [corefreqk]
[ 7785.078371]  ? CoreFreqK_ProbePCI+0x170/0x170 [corefreqk]
[ 7785.078388]  ? CoreFreqK_Alloc_Features_Level_Up+0x80/0x80 [corefreqk]
[ 7785.078405]  ? CoreFreqK_Alloc_Public_Level_Up+0x70/0x70 [corefreqk]
[ 7785.078422]  ? CoreFreqK_Alloc_Private_Level_Up+0x40/0x40 [corefreqk]
[ 7785.078439]  ? CoreFreqK_Alloc_Processor_RO_Level_Up+0xc0/0xc0 [corefreqk]
[ 7785.078455]  ? Compute_Interval+0xa0/0xa0 [corefreqk]
[ 7785.078473]  ? CoreFreqK_Alloc_Private_Cache_Level_Up+0x40/0x40 [corefreqk]
[ 7785.078490]  ? CoreFreqK_Alloc_Per_CPU_Level_Up+0x190/0x190 [corefreqk]
[ 7785.078506]  ? CoreFreqK_Alloc_Processor_RW_Level_Up+0xc0/0xc0 [corefreqk]
[ 7785.078523]  ? SMBIOS_Collect+0x290/0x290 [corefreqk]
[ 7785.078541]  ? Controller_Stop+0x110/0x110 [corefreqk]
[ 7785.078560]  CoreFreqK_Init+0x7/0x1000 [corefreqk]
[ 7785.078579]  do_one_initcall+0x5b/0x190
[ 7785.078585]  do_init_module+0x51/0x230
[ 7785.078590]  load_module+0x27dc/0x2980
[ 7785.078594]  ? m_show+0x1d0/0x1d0
[ 7785.078600]  __do_sys_finit_module+0xb7/0x120
[ 7785.078604]  do_syscall_64+0x33/0x80
[ 7785.078607]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 7785.078611] RIP: 0033:0x7ffb88cc9a9d
[ 7785.078614] Code: bb 0c 00 0f 05 eb a9 66 0f 1f 44 00 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d a3 73 0c 00 f7 d8 64 89 01 48
[ 7785.078617] RSP: 002b:00007fffca7f4b78 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[ 7785.078620] RAX: ffffffffffffffda RBX: 0000564625dc77c0 RCX: 00007ffb88cc9a9d
[ 7785.078623] RDX: 0000000000000000 RSI: 0000564624eb7270 RDI: 0000000000000003
[ 7785.078625] RBP: 0000000000000000 R08: 0000000000000000 R09: 00007ffb88d95380
[ 7785.078627] R10: 0000000000000003 R11: 0000000000000246 R12: 0000564624eb7270
[ 7785.078629] R13: 0000000000000000 R14: 0000564625dca1f0 R15: 0000000000000000
[ 7785.078632] ---[ end trace f0954e50005e5ae2 ]---
[ 7786.751937] RIP: 0010:BaseClock_Silvermont+0x8/0x60 [corefreqk]
[ 7786.751981] Code: af f0 49 89 10 49 89 48 10 4c 89 c0 49 89 70 08 c3 b9 b4 90 f7 04 b8 05 0d 00 00 ba 53 00 00 00 eb da 49 89 f8 b9 cd 00 00 00 <0f> 32 83 e0 07 3c 04 77 3b 0f b6 c0 48 8b 14 c5 80 3d c2 c0 48 8b
[ 7786.751986] RSP: 0018:ffff9f810af0fa88 EFLAGS: 00010282
[ 7786.752363] RAX: ffffffffc0bf32e0 RBX: ffff9f810af0fbb8 RCX: 00000000000000cd
[ 7786.752366] RDX: 0000000000000037 RSI: 000000000000000b RDI: ffff9f810af0faa0
[ 7786.752368] RBP: ffff9f810af0fb40 R08: ffff9f810af0faa0 R09: 0000000000000000
[ 7786.752371] R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000004
[ 7786.752373] R13: 000000000000000b R14: ffff8f4cf2a4a000 R15: 0000000000000000
[ 7786.752375] FS:  00007ffb88ba3740(0000) GS:ffff8f4cf6d80000(0000) knlGS:0000000000000000
[ 7786.752378] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 7786.752381] CR2: 00007fa7ee6cefd8 CR3: 0000000269e50000 CR4:
0000000000350ee0

./corefreq-cli -v and ./corefreqd -v: 1.84.4.

rmmod -f corefreqk:

rmmod: ERROR: could not remove 'corefreqk': Device or resource busy
rmmod: ERROR: could not remove module corefreqk: Device or resource busy

(Forced module unloading I have compiled into the kernel:
zgrep MODULE_FORCE_UNLOAD /proc/config.gz:

CONFIG_MODULE_FORCE_UNLOAD=y

)

-- Planung ist der Ersatz des Zufalls durch den Irrtum.

dreirund commented 3 years ago

.. for safety and security reasons, Please make the module refusing to load on untested architectures, until some overriding module parameter is provided!

-- ich warte gerne [...] Wenn ich warten muss, da hab' ich ja viel Zeit.

(Quelle: Peter Lustig, http://youtube.com/watch?v=5ippbVCKbjQ&t=113)

cyring commented 3 years ago

MSR_FSB_FREQ (0xcd) is the error. GDM Plus: only registers from tables 2.6, 2.12, 2.13 and probably other IA and compatible MSR. Tremont may also crashed. I need to access and develop directly on these architectures.

cyring commented 3 years ago

Hello, I'm refactoring Goldmont and subsequent architectures (Gemini Lake) Can you please get the latest commit from develop and try again ?

git pull

make clean all
insmod corefreqk.ko
## if no error happened then proceed with daemon and client
./corefreqd -d
./corefreq-cli -s -m -R -c 1 -i 1 -g 1 -C 1
dreirund commented 3 years ago

Sorry, I do have no capacities anymore to do frequent testing & communication.

If you have done major work, than I can test for you.

Regards!

On Sat, 10 Apr 2021 15:49:44 -0700, CYRIL INGENIERIE @.***> wrote about "Re: [cyring/CoreFreq] modprobe corefreqk fails with system stall, Segmentation fault and trace in kernel log/ dmesg. (#227)":

Hello, I'm refactoring Goldmont and subsequent architectures (Gemini Lake) Can you please get the latest commit from develop and try again ?

git pull

make clean all
insmod corefreqk.ko
## if no error happened then proceed with daemon and client
./corefreqd -d
./corefreq-cli -s -m -R -c 1 -i 1 -g 1 -C 1

-- Wählt man eine der Antworten zu dieser Frage zufällig aus, wie hoch ist die Wahrscheinlichkeit, dass sie korrekt ist?

a) 1/3 b) 1/3 c) sonstige, und zwar: ____

cyring commented 3 years ago

Sorry, I do have no capacities anymore to do frequent testing & communication. If you have done major work, than I can test for you. Regards!

It's the purpose of the latest refactoring.

dreirund commented 3 years ago

On Sat, 10 Apr 2021 15:49:44 -0700, CYRIL INGENIERIE @.***> wrote about "Re: [cyring/CoreFreq] modprobe corefreqk fails with system stall, Segmentation fault and trace in kernel log/ dmesg. (#227)":

Can you please get the latest commit from develop and try again ? insmod corefreqk.ko

dmesg:

CoreFreq(3:-1): Processor [ 06_7A] Architecture [Atom/Gemini Lake] CPU [4/4]

if no error happened then proceed with daemon and client

./corefreqd -d

CoreFreq Daemon 1.84.5  Copyright (C) 2015-2021 CYRIL INGENIERIE

  Processor [Intel(R) Celeron(R) N4100 CPU @ 1.10GHz]
  Architecture [Atom/Gemini Lake] 4/4 CPU Online.
  SleepInterval(1000), SysGate(2000), 2326 tasks

    CPU #000 @ 1094.40 MHz
    CPU #001 @ 1094.40 MHz
    CPU #002 @ 1094.40 MHz
    CPU #003 @ 1094.40 MHz
        NTFY || ....
    Thread [7efda264c640] Init CYCLE 003
    Thread [7efda264c640] Init CHILD 003
    Thread [7efda2e4d640] Init CHILD 002
    Thread [7efda2e4d640] Init CYCLE 002
    Thread [7efda3e4f640] Init CHILD 000
    Thread [7efda3e4f640] Init CYCLE 000
    Thread [7efda364e640] Init CYCLE 001
    Thread [7efda364e640] Init CHILD 001

./corefreq-cli -s -m -R -c 1 -i 1 -g 1 -C 1

Processor                              [Intel(R) Celeron(R) N4100 CPU @ 1.10GHz]
|- Architecture                                               [Atom/Gemini Lake]
|- Vendor ID                                                      [GenuineIntel]
|- Microcode                                                        [0x00000022]
|- Signature                                                           [  06_7A]
|- Stepping                                                            [      1]
|- Online CPU                                                          [  4/  4]
|- Base Clock                                                          [ 99.492]
|- Frequency            (MHz)                      Ratio                        
                 Min    795.94                    <   8 >                       
                 Max   1094.41                    <  11 >                       
|- Factory                                                             [100.000]
                       1100                       [  11 ]                       
|- Performance                                                                  
   |- P-State                                                                   
                 TGT    795.94                    <   8 >                       
|- Turbo Boost                                                         [   LOCK]
                  1C   2387.81                    <  24 >                       
                  2C   2288.32                    <  23 >                       
                  3C   2288.32                    <  23 >                       
                  4C   2288.32                    <  23 >                       
|- Uncore                                                              [   LOCK]
|- TDP                                                           Level [  0:0  ]
   |- Programmable                                                     [   LOCK]
   |- Configuration                                                    [   LOCK]
   |- Turbo Activation                                                 [   LOCK]

Instruction Set Extensions                                                      
|- 3DNow!/Ext [N/N]          ADX [N]          AES [Y]  AVX/AVX2 [N/N] 
|- AVX512-F     [N]    AVX512-DQ [N]  AVX512-IFMA [N]   AVX512-PF [N] 
|- AVX512-ER    [N]    AVX512-CD [N]    AVX512-BW [N]   AVX512-VL [N] 
|- AVX512-VBMI  [N] AVX512-VBMI2 [N]  AVX512-VNMI [N]  AVX512-ALG [N] 
|- AVX512-VPOP  [N] AVX512-VNNIW [N] AVX512-FMAPS [N] AVX512-VP2I [N] 
|- AVX512-BF16  [N]  BMI1/BMI2 [N/N]         CLWB [N] CLFLUSH/O [Y/Y] 
|- CLAC-STAC    [Y]         CMOV [Y]    CMPXCHG8B [Y]  CMPXCHG16B [Y] 
|- F16C         [N]          FPU [Y]         FXSR [Y]   LAHF-SAHF [Y] 
|- MMX/Ext    [Y/N] MON/MWAITX [Y/N]        MOVBE [Y]   PCLMULQDQ [Y] 
|- POPCNT       [Y]       RDRAND [Y]       RDSEED [Y]      RDTSCP [Y] 
|- SEP          [Y]          SHA [Y]          SSE [Y]        SSE2 [Y] 
|- SSE3         [Y]        SSSE3 [Y]  SSE4.1/4A [Y/N]      SSE4.2 [Y] 
|- SERIALIZE    [N]      SYSCALL [Y]          SGX [Y]       RDPID [Y] 

Features                                                                        
|- 1 GB Pages Support                                      1GB-PAGES   [Capable]
|- Advanced Configuration & Power Interface                     ACPI   [Capable]
|- Advanced Programmable Interrupt Controller                   APIC   [Capable]
|- Core Multi-Processing                                  CMP Legacy   [Missing]
|- L1 Data Cache Context ID                                  CNXT-ID   [Missing]
|- Direct Cache Access                                           DCA   [Missing]
|- Debugging Extension                                            DE   [Capable]
|- Debug Store & Precise Event Based Sampling               DS, PEBS   [Capable]
|- CPL Qualified Debug Store                                  DS-CPL   [Capable]
|- 64-Bit Debug Store                                         DTES64   [Capable]
|- Fast-String Operation                                Fast-Strings   [Capable]
|- Fused Multiply Add                                     FMA | FMA4   [Missing]
|- Hardware Lock Elision                                         HLE   [Missing]
|- Instruction Based Sampling                                    IBS   [Missing]
|- Long Mode 64 bits                                       IA64 | LM   [Capable]
|- LightWeight Profiling                                         LWP   [Missing]
|- Machine-Check Architecture                                    MCA   [Capable]
|- Memory Protection Extensions                                  MPX   [Capable]
|- Model Specific Registers                                      MSR   [Capable]
|- Memory Type Range Registers                                  MTRR   [Capable]
|- OS-Enabled Ext. State Management                          OSXSAVE   [Capable]
|- Physical Address Extension                                    PAE   [Capable]
|- Page Attribute Table                                          PAT   [Capable]
|- Pending Break Enable                                          PBE   [Capable]
|- Process Context Identifiers                                  PCID   [Missing]
|- Perfmon and Debug Capability                                 PDCM   [Capable]
|- Page Global Enable                                            PGE   [Capable]
|- Page Size Extension                                           PSE   [Capable]
|- 36-bit Page Size Extension                                  PSE36   [Capable]
|- Processor Serial Number                                       PSN   [Missing]
|- Resource Director Technology/PQE                            RDT-A   [Capable]
|- Resource Director Technology/PQM                            RDT-M   [Missing]
|- Restricted Transactional Memory                               RTM   [Missing]
|- Safer Mode Extensions                                         SMX   [Missing]
|- Self-Snoop                                                     SS   [Capable]
|- Supervisor-Mode Access Prevention                            SMAP   [Capable]
|- Supervisor-Mode Execution Prevention                         SMEP   [Capable]
|- Time Stamp Counter                                            TSC [Invariant]
|- Time Stamp Counter Deadline                          TSC-DEADLINE   [Capable]
|- TSX Force Abort MSR Register                            TSX-ABORT   [Missing]
|- TSX Suspend Load Address Tracking                       TSX-LDTRK   [Missing]
|- User-Mode Instruction Prevention                             UMIP   [Capable]
|- Virtual Mode Extension                                        VME   [Capable]
|- Virtual Machine Extensions                                    VMX   [Capable]
|- Extended xAPIC Support                                     x2APIC   [ x2APIC]
|- Execution Disable Bit Support                              XD-Bit   [Capable]
|- XSAVE/XSTOR States                                          XSAVE   [Capable]
|- xTPR Update Control                                          xTPR   [Capable]
Mitigation mechanisms                                                           
|- Indirect Branch Restricted Speculation                       IBRS   [Capable]
|- Indirect Branch Prediction Barrier                           IBPB   [Capable]
|- Single Thread Indirect Branch Predictor                     STIBP   [Capable]
|- Speculative Store Bypass Disable                             SSBD   [Missing]
|- Writeback & invalidate the L1 data cache                L1D-FLUSH   [Missing]
|- Hypervisor - No flush L1D on VM entry            L1DFL_VMENTRY_NO   [Capable]
|- Architectural - Buffer Overwriting                       MD-CLEAR   [Missing]
|- Architectural - Rogue Data Cache Load                     RDCL_NO   [Capable]
|- Architectural - Enhanced IBRS                            IBRS_ALL   [Capable]
|- Architectural - Return Stack Buffer Alternate                RSBA   [Capable]
|- Architectural - Speculative Store Bypass                   SSB_NO   [Capable]
|- Architectural - Microarchitectural Data Sampling           MDS_NO   [Capable]
|- Architectural - TSX Asynchronous Abort                     TAA_NO   [Capable]
|- Architectural - Page Size Change MCE               PSCHANGE_MC_NO   [Capable]
|- Architectural - Split Locked Access Exception                SPLA   [Missing]

Technologies                                                                    
|- Data Cache Unit                                                              
   |- L1 Prefetcher                                                L1 HW   < ON>
   |- L1 IP Prefetcher                                          L1 HW IP   < ON>
   |- L2 Prefetcher                                                L2 HW   < ON>
   |- L2 Line Prefetcher                                        L2 HW CL   < ON>
|- System Management Mode                                       SMM-Dual   [OFF]
|- Hyper-Threading                                                   HTT   [OFF]
|- SpeedStep                                                        EIST   < ON>
|- Dynamic Acceleration                                              IDA   [ ON]
|- Turbo Boost                                                     TURBO   < ON>
|- Race To Halt Optimization                                         R2H   <OFF>
|- Virtualization                                                    VMX   [ ON]
   |- I/O MMU                                                       VT-d   [OFF]
   |- Hypervisor                                                           [OFF]
   |- Vendor ID                                                   [         N/A]

Performance Monitoring                                                          
|- Version                                                        PM       [  4]
|- Counters:          General                   Fixed                           
|                     4 x 48 bits             3 x 48 bits                       
|- Enhanced Halt State                                           C1E       <OFF>
|- C1 Auto Demotion                                              C1A       <OFF>
|- C3 Auto Demotion                                              C3A       <OFF>
|- C1 UnDemotion                                                 C1U       <OFF>
|- C3 UnDemotion                                                 C3U       <OFF>
|- C6 Core Demotion                                              CC6       <OFF>
|- C6 Module Demotion                                            MC6       <OFF>
|- Legacy Frequency ID control                                   FID       [OFF]
|- Legacy Voltage ID control                                     VID       [OFF]
|- P-State Hardware Coordination Feedback                MPERF/APERF       [ ON]
|- Hardware-Controlled Performance States                        HWP       [OFF]
|- Hardware Duty Cycling                                         HDC       [OFF]
|- Package C-States                                                             
   |- Configuration Control                                   CONFIG   [   LOCK]
   |- Lowest C-State                                           LIMIT   <     C3>
   |- I/O MWAIT Redirection                                  IOMWAIT   <Disable>
   |- Max C-State Inclusion                                    RANGE   <     C3>
|- Core C-States                                                                
   |- C-States Base Address                                      BAR   [ 0x0   ]
|- MONITOR/MWAIT                                                                
   |- State index:    #0    #1    #2    #3    #4    #5    #6    #7              
   |- Sub C-State:     0     2     0     2     4     2     1     1              
|- Core Cycles                                                         [Capable]
|- Instructions Retired                                                [Capable]
|- Reference Cycles                                                    [Capable]
|- Last Level Cache References                                         [Capable]
|- Last Level Cache Misses                                             [Capable]
|- Branch Instructions Retired                                         [Capable]
|- Branch Mispredicts Retired                                          [Capable]

Power, Current & Thermal                                                        
|- Clock Modulation                                             ODCM   <Disable>
   |- DutyCycle                                                        [  0.00%]
|- Power Management                                         PWR MGMT   [   LOCK]
   |- Energy Policy                                        Bias Hint   [      0]
   |- Energy Policy                                          HWP EPP   [      0]
|- Junction Temperature                                        TjMax   [ 0:105C]
|- Digital Thermal Sensor                                        DTS   [Capable]
|- Power Limit Notification                                      PLN   [Capable]
|- Package Thermal Management                                    PTM   [Capable]
|- Thermal Monitor 1                                             TM1   [ Enable]
|- Thermal Monitor 2                                             TM2   [Capable]
|- Thermal Design Power                                          TDP   [   10 W]
   |- Minimum Power                                              Min   [Missing]
   |- Maximum Power                                              Max   [Missing]
|- Package Power Tracking                                        PPT   [   13 W]
|- Electrical Design Current                                     EDC   [Missing]
|- Thermal Design Current                                        TDC   [Missing]
|- Units                                                                        
   |- Power                                               watt   [  0.000003906]
   |- Energy                                             joule   [  0.000000061]
   |- Window                                            second   [  0.000976562]
CPU Pkg  Apic  Core/Thread  Caches      (w)rite-Back (i)nclusive              
 #   ID   ID    ID     ID  L1-Inst Way  L1-Data Way      L2  Way      L3  Way 
000:BSP    0     0      0    32768  8w    24576  6w  4194304 16w        0  0  
001:  0    2     1      0    32768  8w    24576  6w  4194304 16w        0  0  
002:  0    4     2      0    32768  8w    24576  6w  4194304 16w        0  0  
003:  0    6     3      0    32768  8w    24576  6w  4194304 16w        0  0  
CPU FLAG TF  IF IOPL NT  RF  VM  AC  VIF VIP ID                     
#0        0   0   0   0   0   0   0   0   0   0                     
#1        0   0   0   0   0   0   0   0   0   0                     
#2        0   0   0   0   0   0   0   0   0   0                     
#3        0   0   0   0   0   0   0   0   0   0                     
CR0: PE  MP  EM  TS  ET  NE  WP  AM  NW  CD  PG         CR3: PWT PCD
#0    1   1   0   0   1   1   1   1   0   0   1               0   0 
#1    1   1   0   0   1   1   1   1   0   0   1               0   0 
#2    1   1   0   0   1   1   1   1   0   0   1               0   0 
#3    1   1   0   0   1   1   1   1   0   0   1               0   0 
CR4: VME PVI TSD DE  PSE PAE MCE PGE PCE FX XMM UMIP 5LP VMX SMX FS 
#0    0   0   0   0   1   1   1   1   0   1   1   1   0   0   0   1 
#1    0   0   0   0   0   1   1   1   0   1   1   1   0   0   0   1 
#2    0   0   0   0   0   1   1   1   0   1   1   1   0   0   0   1 
#3    0   0   0   0   0   1   1   1   0   1   1   1   0   0   0   1 
CR4:PCID SAV  KL SME SMA PKE CET PKS                        CR8: TPL
#0    0   1   0   1   1   0   0   0                               1 
#1    0   1   0   1   1   0   0   0                               1 
#2    0   1   0   1   1   0   0   0                               1 
#3    0   1   0   1   1   0   0   0                               1 
EFCR    LCK VMX^SGX [SENTER] [ SGX ] LMC    EFER SCE LME LMA NXE SVM
#0        1   0   1   0   0   0   0   0           1   1   1   1   0 
#1        1   0   1   0   0   0   0   0           1   1   1   1   0 
#2        1   0   1   0   0   0   0   0           1   1   1   1   0 
#3        1   0   1   0   0   0   0   0           1   1   1   1   0 
CPU Freq(MHz) Ratio  Turbo  C0(%)  C1(%)  C3(%)  C6(%)  C7(%)  Min TMP:TS  Max
000   96.26 ( 0.97)   8.80   6.34   0.26   0.00  92.99   0.00  53 / 54:51 / 55
001   99.81 ( 1.00)   9.12   7.73   2.71   0.00  89.26   0.00  53 / 54:51 / 55
002   65.13 ( 0.65)   5.95   3.38   0.13   0.00  96.19   0.00  53 / 54:51 / 55
003   42.73 ( 0.43)   3.90   3.85   0.78   0.00  95.08   0.00  53 / 54:51 / 55

    Averages:        Turbo  C0(%)  C1(%)  C3(%)  C6(%)  C7(%)    TjMax:    Pkg:
                      6.94   5.33   0.97   0.00  93.38   0.00     105 C    55 C

CPU     IPS            IPC            CPI
000     0.038770/s     0.588930/c     1.697995/i
001     0.042900/s     0.842829/c     1.186480/i
002     0.005848/s     0.402841/c     2.482367/i
003     0.005380/s     0.345405/c     2.895150/i

        Cycles      State(%)
PC02              15062877     1.17
PC03                     0     0.00
PC04                     0     0.00
PC06             801004413    74.68
PC07                     0     0.00
PC08                     0     0.00
PC09                     0     0.00
PC10                     0     0.00
MC6                  0     0.00
PTSC            1094415461
UNCORE                   0

CPU Freq(MHz) VID  Vcore  TMP(C)    Accumulator       Energy(J)     Power(W)
000  111.06  6266  31.5750   54  000000000000000000    0.000000000   0.000000000
001   18.34  6266  31.5750   54  000000000000000000    0.000000000   0.000000000
002   69.38  6266  31.5750   54  000000000000000000    0.000000000   0.000000000
003   17.77  6266  31.5750   54  000000000000000000    0.000000000   0.000000000

              Package        Cores          Uncore         Memory
Energy(J):    0.002199463    0.000089172    0.000004578    0.000087830
Power(W) :    0.002199463    0.000089172    0.000004578    0.000087830

→ no obvious problems.

-- Vernunft, der Erfahrung wie des Nachdenkens soll man nur mündlich verhandeln. Das ausgesprochene Wort ist sogleich tot, wenn es nicht durch ein folgendes, dem Hörer gemäßes, am Leben erhalten wird. Man merke nur auf ein geselliges Gespräch! Gelangt das Wort nicht schon tot zu dem Hörer, so ermordet er es alsogleich durch Widerspruch, Bestimmen, Bedingen, Ablenken, Abspringen und wie die tausendfältigen Unarten des Unterhaltens auch heißen mögen. Mit dem Geschriebenen ist es noch schlimmer. Niemand mag lesen als das, woran er schon einigermaßen gewöhnt ist; das Bekannte, das Gewohnte verlangt er unter veränderter Form. Doch hat das Geschriebene den Vorteil, dass es dauert und die Zeit abwarten kann, wo ihm zu wirken gegönnt ist. -- Goethe, Maximen und Reflektionen, Nr. 583

cyring commented 3 years ago

Great! Apparently no more crash. Other things could be improved but that will claim a lot of your time with testings. Feel free to close the issue.

dreirund commented 3 years ago

Feel free to close the issue.

/close #227

-- Erleuchtung, die: Wenn Du plötzlich merkst, dass Du sie gar nicht brauchst. (Janosch.)

Enlightenment: When you suddenly realise that you do not need it. (Janosch.)

cyring commented 3 years ago

Hello,

If you have a chance to try the latest develop branch, please let me know if Geminy Lake is better supported ?

Thank you