public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCHSET 0/10] Time: Generic Timekeeping (v.C1)
@ 2006-03-23  3:05 john stultz
  2006-03-23  3:05 ` [PATCH 1/10] Time: Clocksource Infrastructure john stultz
                   ` (10 more replies)
  0 siblings, 11 replies; 16+ messages in thread
From: john stultz @ 2006-03-23  3:05 UTC (permalink / raw)
  To: akpm
  Cc: john stultz, linux-kernel, george, Steven Rostedt,
	Thomas Gleixner, Ulrich Windl, Roman Zippel, Ingo Molnar,
	Paul Mackerras

Andrew, All,
	Here is an updated version of the smaller, reworked and 
improved patchset I mailed out monday. Please consider for inclusion 
into your tree.

Again, the majority of this new incremental design should be credited 
to Roman Zippel, but it is my implementation, so he gets the credit and 
I get the blame. :)

Summary:
	This patchset provides a generic timekeeping infrastructure 
that are independent of the timer interrupt. This allows for robust and 
correct behavior in cases of late or lost ticks, avoids interpolation 
errors, reduces duplication in arch specific code, and allows or 
assists future changes such as high-res timers, dynamic ticks, or 
realtime preemption. Additionally, it provides finer nanosecond 
resolution values to the clock_gettime functions. The patchset also 
converts the i386 arch to use this new infrastructure.

Changes since the C0 release:
o Cut out functions that are no longer used
o Re-arranged patch chunks so each patch makes more sense.
o Few small fixes.
o Improved comments.

On my TODO list:
o More attention on x86-64 and powerpc
o Re-add bits needed for inclusion into HRT and RT
o Try to restore cleanups via small patches

The patchset applies against the current 2.6.16-git.

The complete patchset can be found here:
	http://sr71.net/~jstultz/tod/

I'd like to thank the following people who have contributed ideas, 
criticism, testing and code that has helped shape this work: 
	George Anzinger, Nish Aravamudan, Max Asbock, Serge Belyshev, 
Dominik Brodowski, Adrian Bunk, Thomas Gleixner, Darren Hart, Christoph 
Lameter, Matt Mackal, Keith Mannthey, Ingo Molnar, Andrew Morton, Paul 
Munt, Martin Schwidefsky, Frank Sorenson, Ulrich Windl, Jonathan 
Woithe, Darrick Wong, Roman Zippel and any others whom I've 
accidentally left off this list.

thanks
-john

^ permalink raw reply	[flat|nested] 16+ messages in thread
* [PATCHSET 0/10] Time: Generic Timekeeping (v.C0)
@ 2006-03-18  0:39 john stultz
  2006-03-18  0:40 ` [PATCH 9/10] Time: i386 Conversion - part 4: Remove Old timer_opts Code john stultz
  0 siblings, 1 reply; 16+ messages in thread
From: john stultz @ 2006-03-18  0:39 UTC (permalink / raw)
  To: lkml
  Cc: john stultz, george, Steven Rostedt, Thomas Gleixner,
	Ulrich Windl, Roman Zippel, Ingo Molnar

All,
	So after after the last round of feedback on this series, I've 
gone back to the drawing board and have tried to further cut the patch 
set down to the bare minimum.
	
I've realized that much of the trouble getting this into mainline have 
come from my falling into the well known "here's a new subsystem that 
duplicates the old one, but is better and cleaner and fixes bugs" trap. 
Thus now I'm trying the time-tested "fix what is there with small 
patches" method (which I would have used from the start, but I didn't 
think I could make such drastic changes without breaking everyone 
first).

The majority of this new incremental design should be credited to Roman 
Zippel, but it is my implementation, so he gets the credit and I get 
the blame. :)

This is the rough first cut, so it will probably need a few extra 
passes to be cleaned up and ready for mainline. And while there should 
not be any behaviour changes, since this method also affects all arches 
from the start, extra testing will be needed to make sure it has been 
done correctly. Also more work is needed before this can be 
re-integrated w/ the -RT tree, as timekeeping is still done from 
interrupt context.


Summary:
	This patchset provides a generic timekeeping interfaces that 
are independent of the timer interrupt. This allows for robust and 
correct behavior in cases of late or lost ticks, avoids interpolation 
errors, reduces duplication in arch specific code, and allows or 
assists future changes such as high-res timers, dynamic ticks, or 
realtime preemption. Additionally, it provides finer nanosecond 
resolution values to the clock_gettime functions.


Changes since the B20 release:
o Threw out old NTP changes
o Threw out all code cleanups
o New minimal core implementation for all arches
o Added sysfs clocksource fix
o Added slow TSC detection

On my TODO list:
o Get x86-64 and powerpc patches back up and running
o Try to restore cleanups via small patches

The patchset applies against the current 2.6.16-rc6-git.

The complete patchset can be found here:
	http://sr71.net/~jstultz/tod/

I'd like to thank the following people who have contributed ideas, 
criticism, testing and code that has helped shape this work: 
	George Anzinger, Nish Aravamudan, Max Asbock, Serge Belyshev, 
Dominik Brodowski, Adrian Bunk, Thomas Gleixner, Darren Hart, Christoph 
Lameter, Matt Mackal, Keith Mannthey, Ingo Molnar, Andrew Morton, Paul 
Munt, Martin Schwidefsky, Frank Sorenson, Ulrich Windl, Jonathan 
Woithe, Darrick Wong, Roman Zippel and any others whom I've 
accidentally left off this list.

thanks
-john

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2006-03-23 19:40 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-23  3:05 [PATCHSET 0/10] Time: Generic Timekeeping (v.C1) john stultz
2006-03-23  3:05 ` [PATCH 1/10] Time: Clocksource Infrastructure john stultz
2006-03-23  3:06 ` [PATCH 2/10] Time: Use clocksource infrastructure for update_wall_time john stultz
2006-03-23  3:06 ` [PATCH 3/10] Time: Let user request precision from current_tick_length() john stultz
2006-03-23  3:06 ` [PATCH 4/10] Time: Use clocksource abstraction for NTP adjustments john stultz
2006-03-23  3:06 ` [PATCH 5/10] Time: Introduce arch generic time accessors john stultz
2006-03-23  3:06 ` [PATCH 6/10] Time: i386 Conversion - part 1: Move timer_pit.c to i8253.c john stultz
2006-03-23  3:06 ` [PATCH 7/10] Time: i386 Conversion - part 2: Rework TSC Support john stultz
2006-03-23  3:06 ` [PATCH 8/10] Time: i386 Conversion - part 3: Enable Generic Timekeeping john stultz
2006-03-23  3:06 ` [PATCH 9/10] Time: i386 Conversion - part 4: Remove Old timer_opts Code john stultz
2006-03-23  3:06 ` [PATCH 10/10] Time: i386 Clocksource Drivers john stultz
2006-03-23 12:48 ` [PATCHSET 0/10] Time: Generic Timekeeping (v.C1) Roman Zippel
2006-03-23 14:20   ` Thomas Gleixner
2006-03-23 13:45     ` Roman Zippel
2006-03-23 19:40   ` john stultz
  -- strict thread matches above, loose matches on Subject: below --
2006-03-18  0:39 [PATCHSET 0/10] Time: Generic Timekeeping (v.C0) john stultz
2006-03-18  0:40 ` [PATCH 9/10] Time: i386 Conversion - part 4: Remove Old timer_opts Code john stultz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox