Bug 45497 - Определение ECC-памяти на AMD Ryzen 5000
Summary: Определение ECC-памяти на AMD Ryzen 5000
Status: CLOSED NOTABUG
Alias: None
Product: Branch p10
Classification: Unclassified
Component: kernel-image-std-def (show other bugs)
Version: не указана
Hardware: x86_64 Linux
: P5 normal
Assignee: Vitaly Chikunov
QA Contact: qa-p10@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-03-05 16:57 MSK by userbug
Modified: 2023-03-05 21:10 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description userbug 2023-03-05 16:57:33 MSK
При работе процессоров AMD Ryzen серии 5000 и ОЗУ с поддержкой ECC подсистема EDAC не находит контроллеры памяти:
# edac-util -v 
edac-util: Error: No memory controller data found.

Описание и решение проблемы (патч) представлены здесь: http://blog.zorinaq.com/ecc-on-amd-cezanne/
Comment 1 userbug 2023-03-05 16:57:56 MSK
Информация о системе:
# uname -r
5.10.168-std-def-alt1

# cat /etc/os-release 
NAME="ALT Server-V"
VERSION="10.1"
ID=altlinux
VERSION_ID=10.1
PRETTY_NAME="ALT Virtualization Server 10.1 (Actinoform)"
ANSI_COLOR="1;33"
CPE_NAME="cpe:/o:alt:server-v:10.1"
BUILD_ID="ALT Server-V 10"
HOME_URL="https://basealt.ru/"
BUG_REPORT_URL="https://bugs.altlinux.org/"

# lscpu
Architecture:            x86_64
  CPU op-mode(s):        32-bit, 64-bit
  Address sizes:         48 bits physical, 48 bits virtual
  Byte Order:            Little Endian
CPU(s):                  16
  On-line CPU(s) list:   0-15
Vendor ID:               AuthenticAMD
  BIOS Vendor ID:        Advanced Micro Devices, Inc.
  Model name:            AMD Ryzen 7 PRO 5750G with Radeon Graphics
    BIOS Model name:     AMD Ryzen 7 PRO 5750G with Radeon Graphics      Unknown CPU
                          @ 3.8GHz
    BIOS CPU family:     107
    CPU family:          25
    Model:               80
    Thread(s) per core:  2
    Core(s) per socket:  8
    Socket(s):           1
    Stepping:            0
    Frequency boost:     enabled
    CPU(s) scaling MHz:  27%
    CPU max MHz:         5514.4531
    CPU min MHz:         1400.0000
    BogoMIPS:            7585.79
    Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cm
                         ov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext
                          fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nons
                         top_tsc cpuid extd_apicid aperfmperf pni pclmulqdq monitor 
                         ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave 
                         avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy a
                         bm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce 
                         topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cp
                         b cat_l3 cdp_l3 hw_pstate ssbd mba ibrs ibpb stibp vmmcall 
                         fsgsbase bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a rdseed 
                         adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsa
                         ves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzer
                         o irperf xsaveerptr rdpru wbnoinvd arat npt lbrv svm_lock n
                         rip_save tsc_scale vmcb_clean flushbyasid decodeassists pau
                         sefilter pfthreshold avic v_vmsave_vmload vgif umip pku osp
                         ke vaes vpclmulqdq rdpid overflow_recov succor smca fsrm
Virtualization features: 
  Virtualization:        AMD-V
Caches (sum of all):     
  L1d:                   256 KiB (8 instances)
  L1i:                   256 KiB (8 instances)
  L2:                    4 MiB (8 instances)
  L3:                    16 MiB (1 instance)
NUMA:                    
[root@pve ~]# lscpu
Architecture:            x86_64
  CPU op-mode(s):        32-bit, 64-bit
  Address sizes:         48 bits physical, 48 bits virtual
  Byte Order:            Little Endian
CPU(s):                  16
  On-line CPU(s) list:   0-15
Vendor ID:               AuthenticAMD
  BIOS Vendor ID:        Advanced Micro Devices, Inc.
  Model name:            AMD Ryzen 7 PRO 5750G with Radeon Graphics
    BIOS Model name:     AMD Ryzen 7 PRO 5750G with Radeon Graphics      Unknown CPU
                          @ 3.8GHz
    BIOS CPU family:     107
    CPU family:          25
    Model:               80
    Thread(s) per core:  2
    Core(s) per socket:  8
    Socket(s):           1
    Stepping:            0
    Frequency boost:     enabled
    CPU(s) scaling MHz:  27%
    CPU max MHz:         5514.4531
    CPU min MHz:         1400.0000
    BogoMIPS:            7585.79
    Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cm
                         ov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext
                          fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nons
                         top_tsc cpuid extd_apicid aperfmperf pni pclmulqdq monitor 
                         ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave 
                         avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy a
                         bm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce 
                         topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cp
                         b cat_l3 cdp_l3 hw_pstate ssbd mba ibrs ibpb stibp vmmcall 
                         fsgsbase bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a rdseed 
                         adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsa
                         ves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzer
                         o irperf xsaveerptr rdpru wbnoinvd arat npt lbrv svm_lock n
                         rip_save tsc_scale vmcb_clean flushbyasid decodeassists pau
                         sefilter pfthreshold avic v_vmsave_vmload vgif umip pku osp
                         ke vaes vpclmulqdq rdpid overflow_recov succor smca fsrm
Virtualization features: 
  Virtualization:        AMD-V
Caches (sum of all):     
  L1d:                   256 KiB (8 instances)
  L1i:                   256 KiB (8 instances)
  L2:                    4 MiB (8 instances)
  L3:                    16 MiB (1 instance)
NUMA:                    
  NUMA node(s):          1
  NUMA node0 CPU(s):     0-15
Vulnerabilities:         
  Itlb multihit:         Not affected
  L1tf:                  Not affected
  Mds:                   Not affected
  Meltdown:              Not affected
  Mmio stale data:       Not affected
  Retbleed:              Not affected
  Spec store bypass:     Mitigation; Speculative Store Bypass disabled via prctl and
                          seccomp
  Spectre v1:            Mitigation; usercopy/swapgs barriers and __user pointer san
                         itization
  Spectre v2:            Mitigation; Retpolines, IBPB conditional, IBRS_FW, STIBP al
                         ways-on, RSB filling, PBRSB-eIBRS Not affected
  Srbds:                 Not affected
  Tsx async abort:       Not affected
Comment 2 Vitaly Chikunov 2023-03-05 21:10:55 MSK
По ссылке Marc Bevand хочет удостовериться, что ECC работает. Как я понимаю, ECC работает независимо от наличия edac_mce_amd модуля в ядре (и включается в BIOS). У меня, например, на AMD EPYC 7301 тоже "edac-util: Error: No memory controller data found." даже на 6.1.15. При этом:

  6.1.15-un-def-alt1:~# lshw -class memory | grep -i ecc -2
         size: 24GiB
         capacity: 2TiB
         capabilities: ecc
         configuration: errordetection=multi-bit-ecc

Предлагаю вам также убедиться, что ECC работает (если у вас была такая цель).

Если апстрим не хочет добавлять поддержку, то зачем нам прилагать хаки из 2021. Тем более к 5.10.172 они уже не прикладываются. (Кроме того, у нас нет такого железа и мы не сможем даже убедиться, что это чему-о помогло.)

Также на этой странице есть примеры как собрать ядро со своими патчами https://www.altlinux.org/Kernel

Если вы считаете, что в апстриме должен быть этот патч то, пожалуйста, пишите об этом на stable@vger.kernel.org