cvs commit: src/sys/i386/i386 local_apic.c

John Baldwin jhb at freebsd.org
Wed Sep 27 14:03:40 PDT 2006


On Wednesday 27 September 2006 11:51, Scott Long wrote:
> John Baldwin wrote:
> > On Tuesday 26 September 2006 19:08, Maxim Sobolev wrote:
> > 
> >>John Baldwin wrote:
> >>
> >>>On Tuesday 26 September 2006 12:08, Maxim Sobolev wrote:
> >>>
> >>>>sobomax     2006-09-26 16:08:29 UTC
> >>>>
> >>>>  FreeBSD src repository
> >>>>
> >>>>  Modified files:        (Branch: RELENG_6)
> >>>>    sys/i386/i386        local_apic.c 
> >>>>  Log:
> >>>>  Revert 1.17.2.8, which reportedly causes problems on some hardware.
> >>>
> >>>The report I saw was that it broke ULE in general.  Are you going to 
> > 
> > revert it 
> > 
> >>>from amd64 as well?
> >>
> >>Yes, you are right - this is ULE specific bug. In fact, quick grep of 
> >>the ULE code reveals that it doesn't honor hlt_cpus_mask, so that the 
> >>problem is with ULE, not with the change in question.
> > 
> > 
> > Well, hlt_cpus_mask is really an x86-specific hack. :)
> > 
> 
> x86 and amd64, which represent about 95% of FreeBSD.

My point is that we need a notion of taking CPUs offline and online with 
scheudler hooks, instead of exporting a simple x86-specific bitmask.  Right 
now we don't notify the schedulers when a CPU goes offline so that they can 
try to do sensible things with pinned and bound threads, etc.  Instead, they 
just have to "notice" which is rediculously lame.

-- 
John Baldwin


More information about the cvs-all mailing list