The sysctl shows that the cpu frequency is lowered, acpi_ppc is similar to cpufreq and it doesnt check the speed. There comes a small program with acpi_ppc called chkfreq. This chkfreq program uses the RDTSC assembly command to determine the processor speed:
http://en.wikipedia.org/wiki/RDTSC
I think you didnt understand the problem here. What I am saying is that the sysctl is showing wrong processor speed than the actual processor speed in all my machines. In essence, cpufreq is doing nothing and faking us that it changed the speed but the speed doesnt change. Got it?