On Sep 14, 2011, at 3:56 PM, Andriy Gapon wrote: > on 14/09/2011 20:59 Andrew Boyer said the following: >> When FreeBSD examines the CPU topology using CPUID leaf 11 in >> topo_probe_0xb(), it never sets hyperthreading_cpus. At the end of >> topo_probe_0x4() it sets hyperthreading_cpus = cpu_logical. >> >> Adding that assignment to line 316 of sys/amd64/amd64/mp_machdep.c seems to >> do the right thing on a system with two quad-core E5620 CPUs. The APIC IDs >> that appear when SMT is enabled in the BIOS get marked AP/HT. >> >> Do you agree? > > I agree, but... > But see this: > http://thread.gmane.org/gmane.os.freebsd.devel.hackers/44007/focus=44024 > > Someone long ago has decided that new HTT is not the same as old HTT and that > some rules that apply to old HTT should not apply to new HTT. Even the name. > I think that that's not correct. > But it doesn't seem that I am able to engage into a discussion the person who > made that decision. Also I can not find any other interested developer either. > > Anyway, hyperthreading_cpus variable is useless beyond dmesg cosmetics. > And I don't think that any of my changes affected the dmesg output. > > In my "avgBSD" I have different SMP topology code, but it's not ready yet to be > submitted for merge into the main tree. > > -- > Andriy Gapon Actually, it's not useless. If you don't set it to something other than zero the machdep.hyperthreading_allowed tunable doesn't do anything, since it can't tell which CPUs are actually HTT. -Andrew -------------------------------------------------- Andrew Boyer aboyer_at_averesystems.comReceived on Wed Sep 14 2011 - 18:02:47 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:17 UTC