Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 May 2009 12:26:31 +0400
From:      pluknet <pluknet@gmail.com>
To:        Jeff Roberson <jroberson@jroberson.net>
Cc:        freebsd-current@freebsd.org
Subject:   Re: cannot compile sched_ule without options SMP
Message-ID:  <a31046fc0905020126n6646ec4cpf0545cfe01c7e936@mail.gmail.com>
In-Reply-To: <alpine.BSF.2.00.0904301910550.981@desktop>
References:  <20090430013428.cb4f804b.nork@FreeBSD.org> <alpine.BSF.2.00.0904291329280.981@desktop> <a31046fc0904301232u1f0bdd15ybe9cdb345bce05a0@mail.gmail.com> <alpine.BSF.2.00.0904301207360.981@desktop> <a31046fc0904301939la407bfek2f342b06c7d3ba29@mail.gmail.com> <a31046fc0904302004r195750f2h586e08d9acf854d1@mail.gmail.com> <alpine.BSF.2.00.0904301910550.981@desktop>

next in thread | previous in thread | raw e-mail | index | archive | help
2009/5/1 Jeff Roberson <jroberson@jroberson.net>:
>
>
> On Fri, 1 May 2009, pluknet wrote:
>
>> 2009/5/1 pluknet <pluknet@gmail.com>:
>>>
[snip]
>>> (kgdb) p/x cpu_high
>>> $1 = 0x2
>>> (kgdb) p/x cpu_cores
>>> $2 = 0x1
>>> (kgdb) p/x cpu_logical
>>> $3 = 0x2
>>> (kgdb) p/x cpu_feature
>>> $4 = 0xbfebfbff
>>> (kgdb) p/x logical_cpus
>>> $5 = 0x2
>>> (kgdb) p/x hyperthreading_cpus
>>> $6 = 0x2
>>>
>>
>> Follow up myself:
>>
>> What is embarrassing me is HTT feature enabled. May the reason be in a
>> buggy CPUID ?
>
> This is very curious.  With older revisions did the system believe your CPUs
> were HTT?  You can tell if you had sysctl machdep.hyperthreading_allowed or
> via the ULE kern.sched.topology_spec sysctl.
>

-current from February. I'm afraid it did.

machdep.hyperthreading_allowed: 1

kern.sched.topology_spec: <groups>
 <group level="1" cache-level="0">
  <cpu count="2" mask="0x3">0, 1</cpu>
  <flags></flags>
  <children>
   <group level="3" cache-level="1">
    <cpu count="2" mask="0x3">0, 1</cpu>
    <flags><flag name="HTT">HTT group</flag>
</flags>
   </group>
  </children>
 </group>
</groups>

FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
 cpu0 (BSP): APIC ID:  0
 cpu1 (AP): APIC ID:  1


> I didn't realize there were any core2 CPUs without leaf 4 of cpuid. However,
> I didn't write the earlier hyperthread detection code.  I'll see if I can
> get jhb to chime in.
>
> The HTT feature bit is set on many processors that don't have hyperthreads.
>  So we need a secondary way of differentiating.  I don't know what that is
> in this case.



-- 
wbr,
pluknet



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?a31046fc0905020126n6646ec4cpf0545cfe01c7e936>