Frequently Asked Questions
|Draft / Work in progress|
FAQ for realtime support in Linux Kernel
1. Realtime Support questions
2. Architecture questions
3. Mailing list questions
4. Realtime Patches questions
5. Configuring/compiling questions
6. Realtime samples/Performance questions
7. Realtime Applications questions
8. Maintainers questions
Section 1 - Realtime Support questions
Q1: What is realtime support
Q2: How realtime works A2: The RT-Preempt patch converts Linux into a fully preemptible kernel. The magic is done with:
- Making in-kernel locking-primitives (using spinlocks) preemptible though reimplementation with rtmutexes:
- Critical sections protected by i.e. spinlock_t and rwlock_t are now preemptible. The creation of non-preemptible sections (in kernel) is still possible with raw_spinlock_t (same APIs like spinlock_t)
- Implementing priority inheritance for in-kernel spinlocks and semaphores. For more information on priority inversion and priority inheritance please consult Introduction to Priority Inversion
- Converting interrupt handlers into preemptible kernel threads: The RT-Preempt patch treats soft interrupt handlers in kernel thread context, which is represented by a task_struct like a common userspace process. However it is also possible to register an IRQ in kernel context.
- Converting the old Linux timer API into separate infrastructures for high resolution kernel timers plus one for timeouts, leading to userspace POSIX timers with high resolution.
Q3: What is the procedure to add realtime support A3: Download latest realtime preemption patch from http://www.kernel.org/pub/linux/kernel/projects/rt/ then get related vanilla kernel from http://kernel.org then patch, configure and compile
Section 2 - Architecture questions
Q1: Which Architecture are supporting realtime and who is maintainer
Q2: What is the procedure to support realtime in new architecture
Section 3 - Mailing list questions
Q1: realtime mailing list and archives
Q2: If I have some doubts or problems regarding realtime, do I need to send mail in realtime mailing list or linux kernel mailing list or both
Section 4 - Realtime Patches questions
Q1: Why I need to download realtime patches, If realtime support is in Linux kernel
Q2: Download latest realtime patches
Q3: Where can I post my realtime patches
A3: Please send patches for the CONFIG_PREEMPT_RT Patch Set to LKML and put Ingo Molnar and Thomas Gleixner on CC.
Please do not send clocksource and clockevents related patches against the -rt patch. Make sure they apply against the latest -hrt-dyntick patch. -hrt-dyntick might be a bit ahead of -rt at times, but the -rt patch pulls -hrt-dyntick on a regular base.