• Jean Delvare's avatar
    drivers/firmware/dmi_scan.c: make dmi_name_in_vendors more focused · 66e13e66
    Jean Delvare authored
    The current implementation of dmi_name_in_vendors() is an invitation to
    lazy coding and false positives [1].  Searching for a string in 8 know
    what you're looking for, so you should know where to look.  strstr isn't
    fast, especially when it fails, so we should avoid calling it when it
    just can't succeed.
    
    Looking at the current users of the function, it seems clear to me that
    they are looking for a system or board vendor name, so let's limit
    dmi_name_in_vendors to these two DMI fields.  This much better matches
    the function name, BTW.
    
    [1] We currently have code looking for short names in DMI data, such as
    "IBM", "ASUS" or "Acer".  I let you guess what will happen the day other
    vendors ship products named, for example, "SCHREIBMEISTER", "PEGASUS" or
    "Acerola".
    Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
    Cc: Andi Kleen <andi@firstfloor.org>
    Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    66e13e66
dmi_scan.c 17.5 KB