Unverified Commit d23f8017 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!2335 x86/topology: Fix erroneous smp_num_siblings on Intel Hybrid platforms

parents 9afce123 4c3ac2af
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -77,7 +77,7 @@ int detect_extended_topology_early(struct cpuinfo_x86 *c)
	 * initial apic id, which also represents 32-bit extended x2apic id.
	 */
	c->initial_apicid = edx;
	smp_num_siblings = LEVEL_MAX_SIBLINGS(ebx);
	smp_num_siblings = max_t(int, smp_num_siblings, LEVEL_MAX_SIBLINGS(ebx));
#endif
	return 0;
}
@@ -106,7 +106,8 @@ int detect_extended_topology(struct cpuinfo_x86 *c)
	 */
	cpuid_count(leaf, SMT_LEVEL, &eax, &ebx, &ecx, &edx);
	c->initial_apicid = edx;
	core_level_siblings = smp_num_siblings = LEVEL_MAX_SIBLINGS(ebx);
	core_level_siblings = LEVEL_MAX_SIBLINGS(ebx);
	smp_num_siblings = max_t(int, smp_num_siblings, LEVEL_MAX_SIBLINGS(ebx));
	core_plus_mask_width = ht_mask_width = BITS_SHIFT_NEXT_LEVEL(eax);
	die_level_siblings = LEVEL_MAX_SIBLINGS(ebx);
	die_plus_mask_width = BITS_SHIFT_NEXT_LEVEL(eax);