Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 07 Jun 2012 11:10:32 +0300
From:      Andriy Gapon <avg@FreeBSD.org>
To:        Jung-uk Kim <jkim@FreeBSD.org>
Cc:        sbruno@FreeBSD.org, freebsd-acpi@FreeBSD.org, freebsd-stable@FreeBSD.org, Yamagi Burmeister <lists@yamagi.org>, seanbru@yahoo-inc.com
Subject:   Re: [stable 9] broken hwpstate calls
Message-ID:  <4FD061F8.6030905@FreeBSD.org>
In-Reply-To: <4FCFE178.9080505@FreeBSD.org>
References:  <1337319129.2915.4.camel@powernoodle-l7> <4FB6765A.2050307@FreeBSD.org> <1337710214.2916.8.camel@powernoodle-l7.corp.yahoo.com> <20120525163653.b61a08e2.lists@yamagi.org> <4FBFA9A9.7020806@FreeBSD.org> <4FBFBD39.7000105@FreeBSD.org> <4FBFDFFB.9020501@FreeBSD.org> <4FBFE624.1020208@FreeBSD.org> <20120526090233.f638c1d2.lists@yamagi.org> <4FC0A3A1.80200@FreeBSD.org> <4FC7D464.20602@FreeBSD.org> <4FCFD2A1.60706@FreeBSD.org> <4FCFE178.9080505@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
on 07/06/2012 02:02 Jung-uk Kim said the following:
> Any way, hwpstate still isn't quite right even without your patch.
> 
> sys/kern/kern_cpu.c cpufreq_curr_sysctl() -> CPUFREQ_SET() ->	/* for all
> CPU devices */ cf_set_method() ->	/* thread_lock(), sched_bind(), ... */ 
> CPUFREQ_DRV_SET() -> sys/x86/cpufreq/hwpstate.c hwpstate_set() -> 
> hwpstate_goto_pstate()	/* for each CPU unit */ /* thread_lock(),
> sched_bind(), ... */

Oh, I didn't realize that there was the cpufreq-level loop over all CPUs!
That really sucks.

Maybe some day we should accept that different CPUs could legitimately be in
different P-states and provide support for that throughout the stack (from
powerd to drivers).

-- 
Andriy Gapon



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