Comprei o X670E Pro RS recentemente e adicionei algumas memórias ECC a ele. Agora eu queria habilitar a limpeza de memória, no entanto, quando eu olho, /sys/devices/system/edac/mc/mc0/
ele sdram_scrub_rate
está faltando. Não consigo encontrar uma resposta sobre o porquê online. Mudei o ECC de automático para habilitado apenas para forçá-lo a ser habilitado. lsmod | fgrep edac
relatórios:
amd64_edac 69632 0
edac_mce_amd 40960 1 amd64_edac
O que está correto, sim(?).
Estou esquecendo de algum driver ou talvez eu tenha esquecido que o edac-utils é necessário.
sdram_scrub_rate
A questão é por que está faltando.
O driver para seu controlador de memória parece não estar implementando nem uma função que possa lhe dar a taxa de scrub, nem uma função que possa defini-la. Nesse caso, o EDAC sysfs simplesmente não torna esse atributo visível .
Isso pode significar que o controlador de memória (no caso das CPUs AMD Zen4/5, dentro da sua CPU) não suporta isso, ou simplesmente que não é implementado pelo driver. (Sua placa-mãe não importa de forma alguma – o controlador de memória é parte da CPU em basicamente qualquer PC moderno.)
Entretanto, se você estiver usando o
amd64_edac
driver e assumindo que tem um dispositivo da família de CPU 0x1a, isso deve definir essas funções ( aqui ).Então, meu melhor palpite aqui é que você está usando um kernel muito antigo, ou forçar o ECC a "ativar" não fez nada, e tentou forçar o carregamento do módulo do kernel embora a função de hardware ECC não estivesse ativada.
Desculpe-me por não poder ajudar mais – se você já estiver usando um kernel da série 6.xy, precisará recompilar seu kernel, provavelmente com a
CONFIG_EDAC_DEBUG
opção kernel, para poder verificar o que está disponível onde.