Bug 462410
Summary: | [BUG]Loosing time with divider=10 option. | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 5 | Reporter: | Alok Kataria <akataria> | ||||
Component: | kernel | Assignee: | Prarit Bhargava <prarit> | ||||
Status: | CLOSED DUPLICATE | QA Contact: | Red Hat Kernel QE team <kernel-qe> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 5.2 | CC: | clalance, dhecht, garrett, peterm, riel, xen-maint | ||||
Target Milestone: | rc | ||||||
Target Release: | --- | ||||||
Hardware: | All | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2011-10-17 14:13:36 UTC | Type: | --- | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | |||||||
Bug Blocks: | 533192 | ||||||
Attachments: |
|
Description
Alok Kataria
2008-09-16 00:31:56 UTC
I did some testing here. I can definitely see the clock drift when booting the RHEL-5 i386 kernel with "clocksource=pit divider=10" under a fully virtualized Xen guest. However, I don't think your analysis is quite right. First, we can't actually change ACTHZ as you suggest because that would make it not a constant anymore, and TICK_NSEC is used to make pre-processor decisions. That's minor, I hacked around that temporarily by modifying the "tick_nsec" value in kernel/timer.c. However, doing that caused the time drift to become much worse, not better. With a straight 92 kernel, I was falling behind about .005 seconds per second. With this patch in place, I'm falling behind about .01 seconds per second, so the problem has doubled. I'll have to do some more investigation here to see what exactly is going on. Chris Lalancette Created attachment 317099 [details]
Fine tune the ACT_HZ value when divider= is enabled.
(In reply to comment #1) > I did some testing here. I can definitely see the clock drift when booting the > RHEL-5 i386 kernel with "clocksource=pit divider=10" under a fully virtualized > Xen guest. However, I don't think your analysis is quite right. First, we > can't actually change ACTHZ as you suggest because that would make it not a > constant anymore, and TICK_NSEC is used to make pre-processor decisions. > That's minor, I hacked around that temporarily by modifying the "tick_nsec" > value in kernel/timer.c. IMO, you should also change the clocksource_jiffies.mult value to reflect this in kernel/time/jiffies.c. Have a look at this experimental patch. Another worry could be that we are not changing all the places where TICK_NSEC needs to reflect the more fine tuned value. > However, doing that caused the time drift to become > much worse, not better. With a straight 92 kernel, I was falling behind about > .005 seconds per second. With this patch in place, I'm falling behind about > .01 seconds per second, so the problem has doubled. I'll have to do some more > investigation here to see what exactly is going on. Also it would be great if you could post your changes. Alok > > Chris Lalancette Reassigning to kernel, since this is bug is not Xen related. Ah, true, but I'll assign it back to myself. I do intend to do some work with the tick divider in the near future. Chris Lalancette Updating PM score. PR 463573 should fix this too so am duping it. This request was evaluated by Red Hat Product Management for inclusion in Red Hat Enterprise Linux 5.6 and Red Hat does not plan to fix this issue the currently developed update. Contact your manager or support representative in case you need to escalate this bug. This request was evaluated by Red Hat Product Management for inclusion in Red Hat Enterprise Linux 5.7 and Red Hat does not plan to fix this issue the currently developed update. Contact your manager or support representative in case you need to escalate this bug. *** This bug has been marked as a duplicate of bug 463573 *** |