Usando o dd para causar um erro na memória

2

O comando dd if=/dev/mem of=/dev/null seek=16k bs=4k count=1 é usado para testar a injeção de erroetect para edac . Por quê? Tanto quanto eu sei, dd é simplesmente copiar dados desses dispositivos para outro lugar. O que pode acontecer de ruim para causar um erro na memória copiando?

    
por Amumu 26.12.2012 / 04:31

1 resposta

3

Você pulou a parte importante antes do comando dd, da documentação do kernel :

For example, the following code will generate an error for any write access at socket 0, on any DIMM/address on channel 2:

 echo 2 >/sys/devices/system/edac/mc/mc0/inject_addrmatch/channel
 echo 2 >/sys/devices/system/edac/mc/mc0/inject_type
 echo 64 >/sys/devices/system/edac/mc/mc0/inject_eccmask
 echo 3 >/sys/devices/system/edac/mc/mc0/inject_section
 echo 1 >/sys/devices/system/edac/mc/mc0/inject_enable
 dd if=/dev/mem of=/dev/null seek=16k bs=4k count=1 >& /dev/null

O driver do kernel gera erros, isso não tem nada a ver com o dd, o dd é usado apenas para ativá-lo.

    
por 26.12.2012 / 04:36

Tags