From: John Stultz <john.stultz@linaro.org>
To: LKML <linux-kernel@vger.kernel.org>
Cc: John Stultz <john.stultz@linaro.org>,
Thomas Gleixner <tglx@linutronix.de>,
Eric Dumazet <eric.dumazet@gmail.com>,
Richard Cochran <richardcochran@gmail.com>
Subject: [PATCH 00/16] Timekeeping cleanups and locking changes
Date: Mon, 14 Nov 2011 20:03:50 -0800 [thread overview]
Message-ID: <1321329846-14755-1-git-send-email-john.stultz@linaro.org> (raw)
Hey Thomas,
THIS IS PATCHWAR!
After your 7 patch patchbomb reworking much of the timekeeping locking
from this morning, I decided such aggression will not stand.
So here's 16 patches, some are your patches, just lobbed back, targeting
strategic locations of your inbox.
Its all pretty rough, and the whole set likely needs some refactoring, but
I wanted to let you see my take on your approach. Much of this are changes
I've intended to get to, but have just been too busy of late.
I also included a similar shadow-update trick to reduce the lock
hold times, but as noted in the patch, I'm still worried about the
likely race there, and we need to do some further vetting to ensure
it really can't cause trouble (as well as warnings to anyone trying
to later understand the rational there).
I also still need to refactor the update_vsyscall implementations to
utilize the xsec_nsec, so we can avoid truncation issues without
mucking with the ntp_error code.
Anyway, let me know what you think.
-john
CC: Thomas Gleixner <tglx@linutronix.de>
CC: Eric Dumazet <eric.dumazet@gmail.com>
CC: Richard Cochran <richardcochran@gmail.com>
Patches are also available here:
(Fair warning, I may rebase the following branch)
git://git.linaro.org/people/jstultz/linux.git dev/xtime-breakup
John Stultz (14):
time: Move total_sleep_time into the timekeeper structure
time: Move wall_to_monotonic into the timekeeper structure
time: Move xtime into timekeeeper structure
time: Move raw_time into timekeeper structure
time: Cleanup global variables and move them to the top
time: Add timekeeper lock
ntp: Cleanup timex.h
ntp: Access tick_length variable via ntp_tick_length()
ntp: Add ntp_lock to replace xtime_locking
time: Remove most of xtime_lock usage in timekeeping.c
time: Condense timekeeper.xtime into xtime_sec
time: Rework timekeeping functions to take timekeeper ptr as argument
time: Update tiemkeeper structure using a local shadow
time: Rework update_vsyscall to pass timekeeper
Thomas Gleixner (2):
time: Reorder so the hot data is together
time: Move common updates to a function
arch/ia64/kernel/time.c | 28 ++--
arch/powerpc/kernel/time.c | 25 +-
arch/s390/kernel/time.c | 18 +-
arch/x86/kernel/vsyscall_64.c | 21 +-
include/linux/clocksource.h | 9 -
include/linux/timekeeper.h | 75 +++++++
include/linux/timex.h | 17 +--
kernel/time/ntp.c | 83 ++++++--
kernel/time/timekeeping.c | 494 +++++++++++++++++++++--------------------
9 files changed, 442 insertions(+), 328 deletions(-)
create mode 100644 include/linux/timekeeper.h
--
1.7.3.2.146.gca209
next reply other threads:[~2011-11-15 4:04 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-15 4:03 John Stultz [this message]
2011-11-15 4:03 ` [PATCH 01/16] time: Move total_sleep_time into the timekeeper structure John Stultz
2011-11-15 4:03 ` [PATCH 02/16] time: Move wall_to_monotonic " John Stultz
2011-11-15 4:03 ` [PATCH 03/16] time: Move xtime into timekeeeper structure John Stultz
2011-11-15 4:03 ` [PATCH 04/16] time: Move raw_time into timekeeper structure John Stultz
2011-11-15 4:03 ` [PATCH 05/16] time: Cleanup global variables and move them to the top John Stultz
2011-11-15 4:03 ` [PATCH 06/16] time: Add timekeeper lock John Stultz
2011-11-15 4:03 ` [PATCH 07/16] ntp: Cleanup timex.h John Stultz
2011-11-15 4:03 ` [PATCH 08/16] ntp: Access tick_length variable via ntp_tick_length() John Stultz
2011-11-15 4:03 ` [PATCH 09/16] ntp: Add ntp_lock to replace xtime_locking John Stultz
2011-11-15 4:04 ` [PATCH 10/16] time: Remove most of xtime_lock usage in timekeeping.c John Stultz
2011-11-15 4:04 ` [PATCH 11/16] time: Reorder so the hot data is together John Stultz
2011-11-15 4:04 ` [PATCH 12/16] time: Move common updates to a function John Stultz
2011-11-15 4:04 ` [PATCH 13/16] time: Condense timekeeper.xtime into xtime_sec John Stultz
2011-11-15 4:04 ` [PATCH 14/16] time: Rework timekeeping functions to take timekeeper ptr as argument John Stultz
2011-11-15 4:04 ` [PATCH 15/16] time: Update tiemkeeper structure using a local shadow John Stultz
2011-11-17 22:03 ` John Stultz
2011-11-15 4:04 ` [PATCH 16/16] time: Rework update_vsyscall to pass timekeeper John Stultz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1321329846-14755-1-git-send-email-john.stultz@linaro.org \
--to=john.stultz@linaro.org \
--cc=eric.dumazet@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=richardcochran@gmail.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).