* Joerg Sommrey <[EMAIL PROTECTED]> [050208 04:07]:
> Hi all,
> 
> can anybody comment on some amd76x_pm issues?  I've played around with
> this module for months and I'm quite satisfied with it now, but a couple
> of questions remain.
> 
> The changes I made:
> - rediffed to 2.6.10
> - new module macro syntax
> - renamed module parameter l to lazy_idle
> - added C3 counter in sysfs (if enabled)
> - tried to make it preemp-safe
> - added a "dummy operation" after wake up

Nice to hear you've done some more work on it! I haven't spent much
time on this because of the ACPI/BIOS problems on my s2460 make the
box go to sleep when I load the module...

> There were problems with the module wrt system clock stability.  To
> solve these I took a look at the ACPI C2/C3 stuff.  They enter C2/C3
> with local_irq_disable(), so this seems sane.  Some tests with
> preempt_disable() showed worse clock stability, so I kept using
> local_irq_disable().  From Documentation/preempt-locking.txt I got the
> impression that preempt_check_resched() is needed after
> local_irq_enable().  Is this true?  It is not done in the ACPI code.
> 
> The ACPI code does a "dummy operation" after returning from C2/C3.  I
> don't know what this is good for, but I coded something similar in
> amd76x_pm.  Clock stability seems to be a bit better with this dummy
> inb().
> I'm still unsure if the code is correct for a preemptible kernel.
> 

OK. Maybe you can check out the idle loop in my recent dyn-tick
patch? [1] You should be able to modify the idle loop from dyn-tick
patch for amx76x_pm.c. The locking should be better. Then see also 
cpu_idle_wait() for unloading the module for kernels > 2.6.10.

> Regarding C3: A JH comment in the source states, that the C3 code never
> was reached.  Reducing lazy_idle to < 6 results in entering C3 on my box.
> However, on one side there was no additional temperature reduction with
> C3 and on the other side I need lazy_idle > 100 to have a clock with
> acceptable stability. (Currently I use lazy_idle=128.)  That's why I
> didn't enable C3 in the code.

OK.

> Another issue: On Ingo's RT-kernels this module caused a real bad system
> clock stability. ntpd was even unable to syncronize the system clock
> with an attached radio clock.

Is this also with the ACPI PM timer?

> The patch was tested on AMD768 only and surely needs some testing on other
> hardware.

I'll try it out here on my S2460 also. (Assuming I can get my system
woken up after I load the module :)

> Are there any chances for this patch to be merged into mainline in the
> future and what needs to be done to achieve this?

Considering that's it's been in 2.4 for few years now, It should be
safe to merge after some changes I suggested above.

Regards,

Tony

[1] http://lkml.org/lkml/2005/2/5/216
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to