posix-cpu-timers: Cleanup and consolidation
Status from this message: The following commit has been merged into the timers/core branch of tip:
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
37 of 38 patches are in this archive. The cover letter announces 38.
Patches in v2 Applied
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/38 | posix-cpu-timers: Provide task validation functionskernel/ | +44 | 3 replies | |
| 2/38 | posix-cpu-timers: Use common permission check in posix_cpu_clock_get()kernel/ | +16 | 3 replies | |
| 3/38 | posix-cpu-timers: Use common permission check in posix_cpu_timer_create()kernel/ | +3 | 1 reply | |
| 4/38 | posix-cpu-timers: Provide quick sample function for itimerinclude/ kernel/ | +22 | 1 reply | |
| 5/38 | itimers: Use quick sample functionkernel/ | +1 | 2 replies | |
| 6/38 | posix-cpu-timers: Sample directly in timer checkkernel/ | +4 | 1 reply | |
| 7/38 | posix-cpu-timers: Rename thread_group_cputimer() and make it staticinclude/ kernel/ | +15 | 1 reply | |
| 8/38 | posix-cpu-timers: Consolidate thread group sample codekernel/ | +20 | 1 reply | |
| 9/38 | posix-cpu-timers: Use clock ID in posix_cpu_timer_set()kernel/ | +6 | 1 reply | |
| 10/38 | posix-cpu-timers: Use clock ID in posix_cpu_timer_get()kernel/ | +3 | 1 reply | |
| 11/38 | posix-cpu-timers: Use clock ID in posix_cpu_timer_rearm()kernel/ | +3 | 1 reply | |
| 12/38 | posix-cpu-timers: Remove pointless return value checkkernel/ | +2 | 1 reply | |
| 13/38 | posix-cpu-timers: Simplify sample functionskernel/ | +13 | 1 reply | |
| 14/38 | posix-cpu-timers: Get rid of pointer indirectionkernel/ | +22 | 1 reply | |
| 15/38 | posix-cpu-timers: Sample task times once in expiry checkkernel/ | +6 | 1 reply | |
| 16/38 | posix-cpu-timers: Move prof/virt_ticks into callerkernel/ | +9 | 1 reply | |
| 17/38 | posix-cpu-timers: Create a container structinclude/ include/ include/ +3 more | +54 | 2 replies | |
| 19/38 | posix-cpu-timers: Move expiry cache into struct posix_cputimersinclude/ include/ include/ +3 more | +57 | 1 reply | |
| 20/38 | posix-cpu-timers: Provide array based access to expiry cacheinclude/ include/ kernel/ | +31 | 1 reply | |
| 21/38 | posix-cpu-timers: Simplify timer queueingkernel/ | +22 | 1 reply | |
| 22/38 | posix-cpu-timers: Simplify set_process_cpu_timer()kernel/ | +8 | 1 reply | |
| 23/38 | posix-cpu-timers: Switch check_*_timers() to array cachekernel/ | +11 | 1 reply | |
| 24/38 | posix-cpu-timers: Remove the odd field rename definesinclude/ | +0 | 1 reply | |
| 25/38 | posix-cpu-timers: Provide array based sample functionskernel/ | +26 | 1 reply | |
| 26/38 | posix-cpu-timers: Make expiry checks array basedkernel/ | +36 | 1 reply | |
| 27/38 | posix-cpu-timers: Remove cputime_expiresinclude/ kernel/ | +2 | 1 reply | |
| 28/38 | posix-cpu-timers: Restructure expiry arrayinclude/ kernel/ | +82 | 6 replies | |
| 29/38 | posix-cpu-timers: Switch thread group sampling to arrayinclude/ kernel/ kernel/ | +49 | 1 reply | |
| 30/38 | posix-cpu-timers: Respect INFINITY for hard RTTIME limitkernel/ | +1 | 1 reply | |
| 31/38 | rlimit: Rewrite non-sensical RLIMIT_CPU commentkernel/ | +3 | 1 reply | |
| 32/38 | posix-cpu-timers: Get rid of zero checksinclude/ kernel/ kernel/ | +19 | 1 reply | |
| 33/38 | posix-cpu-timers: Consolidate timer expiry furtherkernel/ | +30 | 1 reply | |
| 34/38 | posix-cpu-timers: Get rid of 64bit divisionskernel/ | +14 | 1 reply | |
| 35/38 | posix-cpu-timers: Remove pointless comparisonskernel/ | +7 | 1 reply | |
| 36/38 | posix-cpu-timers: Deduplicate rlimit handlingkernel/ | +25 | 1 reply | |
| 37/38 | posix-cpu-timers: Move state tracking to struct posix_cputimersinclude/ include/ include/ +3 more | +54 | 2 replies | |
| 38/38 | posix-cpu-timers: Utilize timerqueue for storageinclude/ include/ kernel/ | +150 | 6 replies |
Reviews trailers per patch
35 of 37 patches have a Reviewed-by or Acked-by of their own; the series has one for all of them.
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [patch V2 00/38] posix-cpu-timers: Cleanup and consolidation
Folks!
This is the second version of that set. First one can be found here:
https://lkml.kernel.org/r/[email protected]
The following changes vs. V1:
- Folded the synchronization callback patch into the original one and replaced the original one in tip timers/core as requested by Christoph
- Merged the first couple of trivial patches into tip timers/core with Frederics reviewed-by picked up.
- Dropped the sighand locking change as pointed out by Frederic
- Dropped the last patch which switches to direct expiry mode as it got too ugly as the sighand locking change needed to be dropped. This will come with the next set on top of this which moves the expiry into task work context which was the initial reason for staring at this code.
- Reworked the storage array after the patch which removes the temporary union and the abused struct task_cputime as requested by Ingo.
- Fixed up a comment and the ugly hack in do_rlimit() which was needed to convert 0 expiry time to 1 which was required due to the 0 based checks which are now gone. (New)
- Fixed typos in comments and changelogs (Ingo)
The series applies on top of:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers/core
and is available from git as well:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git WIP.timers/core
Thanks,
tglx
8<--------------
include/linux/init_task.h | 11 include/linux/posix-timers.h | 121 ++++- include/linux/sched.h | 29 - include/linux/sched/cputime.h | 12 include/linux/sched/signal.h | 14 include/linux/sched/types.h | 23 include/linux/timerqueue.h | 10 init/init_task.c | 2 kernel/fork.c | 34 - kernel/sched/rt.c | 6 kernel/sys.c | 16 kernel/time/itimer.c | 11 kernel/time/posix-cpu-timers.c | 952 +++++++++++++++++++---------------------- 13 files changed, 616 insertions(+), 625 deletions(-)