Take 4
Well, I didn’t have to wait long. The box crashed right under my fingers only hours after the last changes. So, instead of enabling “Global C-States” in the BIOS, I disabled it explicitly.
Additionally, I used zenstates.py to disable C6 for good, hopefully:
# modprobe msr # ./zenstates.py --c6-disable Disabling C6 state # ./zenstates.py -l P0 - Enabled [...] P1 - Enabled [...] P2 - Enabled [...] P3 - Disabled P4 - Disabled P5 - Disabled P6 - Disabled P7 - Disabled C6 State - Package - Disabled C6 State - Core - Disabled
As suggested here, I also disabled ASLR:
# echo 0 > /proc/sys/kernel/randomize_va_space
Changes so far:
- Buy new Memory: 16GB G.Skill Flare X schwarz DDR4-3200 DIMM CL14 Dual Kit instead of 16GB Corsair Vengeance LPX schwarz DDR4-3000 DIMM CL15 Dual Kit. Didn’t help at all, since it’s not a memory timing problem, but a linux problem. About 200€ wasted, yay! The bright side: If the other changes make my system stable, I could install the other 16GB, too. That would be a whopping 32GB for a desktop system 🙂
- Various BIOS updates.
- Play with D.O.C.P. settings. Didn’t help, see above.
- Find out that linux doesn’t like AMD Ryzen processors and build a custom kernel with RCU_NOCB_CPU enabled. Still crashes 🙁
- Disable C6 with zenstates.py (see above)
- Disable ASLR (also see above)
Keeping my fingers crossed. If all this doesn’t help, my last option would be to change to Intel. I don’t expect much from my system, just that it runs stable. Very disappointing that AMD can’t get it right…