• Borislav Petkov's avatar
    EDAC/amd64: Issue probing messages only on properly detected hardware · 4cbcb73b
    Borislav Petkov authored
    amd64_edac was converted to CPU family autoprobing (from PCI device
    IDs) to not have to add a new PCI device ID each time a new platform is
    shipped but to support the whole family out-of-the-box.
    
    However, this caused a lot of noise in dmesg even when the machine
    doesn't have ECC DIMMs or ECC has been disabled in the BIOS:
    
      EDAC MC: Ver: 3.0.0
      EDAC amd64: F17h detected (node 0).
      EDAC amd64: Node 0: DRAM ECC disabled.
      EDAC amd64: F17h detected (node 1).
      EDAC amd64: Node 1: DRAM ECC disabled.
      EDAC amd64: F17h detected (node 2).
      EDAC amd64: Node 2: DRAM ECC disabled.
      EDAC amd64: F17h detected (node 3).
      EDAC amd64: Node 3: DRAM ECC disabled.
      EDAC amd64: F17h detected (node 4).
      EDAC amd64: Node 4: DRAM ECC disabled.
      EDAC amd64: F17h detected (node 5).
      EDAC amd64: Node 5: DRAM ECC disabled.
      EDAC amd64: F17h detected (node 6).
      EDAC amd64: Node 6: DRAM ECC disabled.
      EDAC amd64: F17h detected (node 7).
      EDAC amd64: Node 7: DRAM ECC disabled.
    
    or even
    
    $ grep EDAC dmesg.log | sed 's/\[.*\] //' | sort | uniq -c
        128 EDAC amd64: F17h detected (node 0).
        128 EDAC amd64: Node 0: DRAM ECC disabled.
          1 EDAC MC: Ver: 3.0.0
    
    on a big machine. Yap, that's once per CPU for 128 of them.
    
    So move the init messages after all probing has succeeded to avoid
    unnecessary spew in dmesg.
    Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
    Link: https://lkml.kernel.org/r/20210119164141.17417-1-bp@alien8.de
    4cbcb73b
amd64_edac.c 101 KB