Clock stalls on Sabertooth 990FX

Alexander Motin mav at FreeBSD.org
Tue Aug 16 14:42:58 UTC 2011


Joe Schaefer wrote:
>>>>>> If changing timecounter won't help, try please this patch:
>>>>>>
>>>>>> --- acpi_hpet.c.prev    2010-12-25 11:28:45.000000000 +0200
>>>>>> +++ acpi_hpet.c 2011-05-11 14:30:59.000000000 +0300
>>>>>> @@ -190,7 +190,7 @@ restart:
>>>>>>                bus_write_4(sc->mem_res, HPET_TIMER_COMPARATOR(t->num),
>>>>>>                    t->next);
>>>>>>        }
>>>>>> -       if (fdiv < 5000) {
>>>>>> +       if (1 || fdiv < 5000) {
>>>>>>                bus_read_4(sc->mem_res, HPET_TIMER_COMPARATOR(t->num));
>>>>>>                now = bus_read_4(sc->mem_res, HPET_MAIN_COUNTER);
>>>>>>
>>>>>> --
>>>>>> Alexander Motin
>>>>> Will do next.
>>>>>
>>>> Patch applied. Running with HPET eventtimer and no stalls during
>>>> make buildworld -j12.
>>>>
>> it maybe help, I used to come across a bug on Linux with regard to HPET,
>> some northbridge chipset (maybe amd's, where
>> HPET sit on) has a problem, that writes to  compatitor regs will not take
>> effect immediately, you need a read to reg to flush it;
> 
> So far the patch performs flawlessly for me.  I'm tempted to reenable turbo
> mode just for kicks (someday, not today- delighted with the uptime!)

I am going to commit following patch:
http://people.freebsd.org/~mav/hpet.paranoid.patch
. It uses same assumptions as Linux. Try it please.

-- 
Alexander Motin


More information about the freebsd-hackers mailing list