[LITMUS^RT] Proposed Feather-Trace / P-FP patches and misc fixes
Björn Brandenburg
bbb at mpi-sws.org
Fri Oct 19 18:05:10 CEST 2012
Hi everyone,
I've pushed a couple of prop/ branches with cleaned-up RTAS work. All of the below patches are compile-tested and, at least before rebasing, ran fine on my machine.
1) https://github.com/LITMUS-RT/litmus-rt/commits/prop/sync-release
d245619 Remove complete_n() API
56faaa8 Re-implement synchronous task set release support
This branch reworks how Litmus does synchronous releases, which in the old implementation could cause latency spikes under partitioned schedulers.
2) https://github.com/LITMUS-RT/litmus-rt/commits/prop/fdso-cleanup
4cb2ad2 FDSO: make sure fdso_close() is called during task teardown
This patch simply ensures that the destructors for semaphores are called when tasks "forget" to close them before termination.
3) https://github.com/LITMUS-RT/litmus-rt/commits/prop/feather-trace
This branch adds a lot of improvements to Feather-Trace overhead tracing.
d940d73 Move SEND_RESCHED tracing to preempt.c
ce313ac Move SCHED2 trace points to post_schedule()
The above two patches move trace points around. SCHED2 was at the wrong place, and SEND_RESCHED should be easier to maintain now.
The following patches improve detection of outliers due to interrupts and preemptions. As a result, it is no longer needed to use statistical outlier filtering (more details in Section V of https://www.mpi-sws.org/~bbb/papers/pdf/preprint-LP-locking-analysis.pdf). I'll push the matching changes to feather-trace-tools soon.
a481c27 Feather-Trace: hide irq in SEND_RESCHED_END
a13904d Trace IPI-related IRQs with ft_irq_fired()
1ae3a8f Mark feather-trace buffers as "disturbed" on soft IRQs
b1a59c1 Make Feather-Trace timestamp collection non-preemptive
00b4b17 Use user-provided irq count for TS_SYSCALL_IN_END
173e46b Export IRQ count to control page
80e2d84 Feather-Trace: add support for locking-related syscall overheads
5454446 Feather-Trace: update locking timestamps
7b84800 Feather-Trace: keep track of PID in trace record
Finally, the following patch allows access to ftdev devices from multiple tasks.
676bcd5 ftdev: don't hold lock while sleeping
4) https://github.com/LITMUS-RT/litmus-rt/commits/prop/pfp-fixes
This is collection of fixes and cleanups in the P-FP plugin.
f0785d8 P-FP: be less permissive about non-running tasks in queue
9e6b747 P-FP: be paranoid in the preemption case
3e49128 P-FP: use proper CONFIG_ symbol
057dcfd P-FP: prevent misuse of priority queue
3e4922f P-FP: simplify priority comparison
a5797a7 P-FP: simplify boost_priority()
3ede287 P-FP: record job release records for tardy tasks
Please have a look the proposed patches over the next week or so (after the EuroSys deadline). If there are no objections, I'd like to merge these changes soon.
Thanks,
Björn
More information about the litmus-dev
mailing list