• Jean Delvare's avatar
    firmware: dmi_scan: Look for SMBIOS 3 entry point first · c9aba143
    Jean Delvare authored
    Since version 3.0.0 of the SMBIOS specification, there can be
    multiple entry points in memory, pointing to one or two DMI tables.
    If both a 32-bit ("_SM_") entry point and a 64-bit ("_SM3_") entry
    point are present, the specification requires that the latter points
    to a table which is a super-set of the table pointed to by the
    former. Therefore we should give preference to the 64-bit ("_SM3_")
    entry point.
    
    However, currently the code is picking the first valid entry point
    it finds. Per specification, we should look for a 64-bit ("_SM3_")
    entry point first, and if we can't find any, look for a 32-bit
    ("_SM_" or "_DMI_") entry point. Modify the code to do that.
    Signed-off-by: default avatarJean Delvare <jdelvare@suse.de>
    c9aba143
dmi_scan.c 25.9 KB