soc/intel/icelake: Clean up report_cpu_info() function
This patch makes below clean up for report_cpu_info() function 1. Replace cpu_string with cpu_not_found 2. Assign default string "Platform info not available" to cpu_not_found string 3. Add array out of bound check while skiping leading white space in cpu brand string name Change-Id: I41c76eb93f0c5229c4a49aa041339b8ad51ad34a Signed-off-by: Subrata Banik <subrata.banik@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/36531 Reviewed-by: Angel Pons <th3fanbus@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
bda870242e
commit
522b7c0324
|
@ -93,7 +93,8 @@ static void report_cpu_info(void)
|
|||
{
|
||||
struct cpuid_result cpuidr;
|
||||
u32 i, index, cpu_id, cpu_feature_flag;
|
||||
char cpu_string[50], *cpu_name = cpu_string; /* 48 bytes are reported */
|
||||
const char cpu_not_found[] = "Platform info not available";
|
||||
const char *cpu_name = cpu_not_found; /* 48 bytes are reported */
|
||||
int vt, txt, aes;
|
||||
msr_t microcode_ver;
|
||||
static const char *const mode[] = {"NOT ", ""};
|
||||
|
@ -102,9 +103,7 @@ static void report_cpu_info(void)
|
|||
|
||||
index = 0x80000000;
|
||||
cpuidr = cpuid(index);
|
||||
if (cpuidr.eax < 0x80000004) {
|
||||
strcpy(cpu_string, "Platform info not available");
|
||||
} else {
|
||||
if (cpuidr.eax >= 0x80000004) {
|
||||
int j = 0;
|
||||
|
||||
for (i = 2; i <= 4; i++) {
|
||||
|
@ -116,10 +115,11 @@ static void report_cpu_info(void)
|
|||
}
|
||||
p[12] = 0;
|
||||
cpu_name = (char *)p;
|
||||
}
|
||||
|
||||
/* Skip leading spaces in CPU name string */
|
||||
while (cpu_name[0] == ' ')
|
||||
while (cpu_name[0] == ' ' && strlen(cpu_name) > 0)
|
||||
cpu_name++;
|
||||
}
|
||||
|
||||
microcode_ver.lo = 0;
|
||||
microcode_ver.hi = 0;
|
||||
|
|
Loading…
Reference in New Issue