RealTime
Size: 10019
Comment: Update link to ubuntu-gutsy.git
|
Size: 10019
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 49: | Line 49: |
1. Seems that ACPI (and a good implementation of it) is [http://www.mail-archive.com/linux-rt-users@vger.kernel.org/msg00333.html mandatory] by hrtimers (fundamental part of the Realtime preemption patch). From 2.6.21 hrtimers is merged in mainline thus we hope this will be resolved in the near future.[[BR]] | 1. Seems that ACPI (and a good implementation of it) is [http://www.mail-archive.com/linux-rt-users@vger.kernel.org/msg00375.html mandatory] by hrtimers (fundamental part of the Realtime preemption patch). From 2.6.21 hrtimers is merged in mainline thus we hope this will be resolved in the near future.[[BR]] |
Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.
Launchpad entry: https://blueprints.launchpad.net/ubuntu/+spec/realtime
Created: Date(2007-01-09T17:28:06Z) by AlessioIgorBogani
Contributors: AlessioIgorBogani
Source Package (Feisty): linux-patch-realtime-preempt-2.6.20
Source Package (Gutsy): linux-source-2.6.20
Binaries Packages (Feisty): linux-image-2.6.20-X-realtime, linux-image-debug-2.6.20-X-realtime, linux-headers-2.6.20-X-realtime, linux-restricted-modules-2.6.20-X-realtime
Binaries Packages (Gutsy): linux-image-2.6.YY-X-rt, linux-image-debug-2.6.YY-X-rt, linux-headers-2.6.YY-X-rt, linux-restricted-modules-2.6.YY-X-rt, linux-ubuntu-modules-2.6.YY-X-rt
Summary
This specification details the plan to add hard real time support in Ubuntu.
Rationale
In some contexts (i.e. industrial automation, robotics and telco) the low-latency support is insufficient. In order to push Ubuntu in these contexts it is necessary to add support for high resolution timers and full preemption in the Linux kernel. These features have been implemented by Thomas Gleixner and Ingo Molnar (http://people.redhat.com/mingo/realtime-preempt/).
We also want a valid FLOSS alternative to SLERT (http://www.novell.com/products/realtime/).
Use cases
Alex is developing an application software (SCADA type) for a customer and he would be very happy to use Linux and Ubuntu for the deployment.
Real time audio support in a radio station studio (http://postscriptumradio.org), which needs RT preemption to satisfy real time features of jack audio connection kit by Paul Davis.
Scope
This specification covers a new linux kernel flavour (-realtime/-rt) in Ubuntu.
Implementation (for Feisty)
We hope to add in the universe repositary (the same place as the linux-image-lowlatency package) a source package that contain only the realtime-preempt patch (~2MB). This package have a build dependency to linux-source-2.6.20 package. When it's compiled it exctract the kernel code from linux-source-2.6.20, apply the patch, set the realtime kernel configuration and build all binary packages: linux-image-2.6.20-X-realtime, linux-image-debug-2.6.20-X-realtime, linux-headers-2.6.20-X-realtime, linux-image-2.6.20-X-realtime-trace.
Implementation (for Gutsy)
We will use the new kernel build system created by the Ubuntu Kernel Team for Gutsy Release. [http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-gutsy.git;a=blob;hb=HEAD;f=debian/binary-custom.d/README More information about it].
Unresolved issues
1. Seems that ACPI (and a good implementation of it) is [http://www.mail-archive.com/linux-rt-users@vger.kernel.org/msg00375.html mandatory] by hrtimers (fundamental part of the Realtime preemption patch). From 2.6.21 hrtimers is merged in mainline thus we hope this will be resolved in the near future.BR 2. The realtime kernel break ABI compatibility (only in Feisty).BR 3. The realtime kernel could expose you to security issues.
Beta available (for Feisty)
Add, as root, to your /etc/apt/sources.list (remember to do a backup of this file) the following line:
deb http://www.texware.it/ubuntu feisty/ deb-src http://www.texware.it/ubuntu feisty/
Then execute:
wget -q http://www.texware.it/ubuntu/feisty/BBA3222D.gpg -O- | sudo apt-key add - sudo apt-get update sudo apt-get install linux-realtime
Binary packages available (based on Ingo's 2.6.20-rt8 patch):
linux-realtimeBR linux-image-realtimeBR linux-image-2.6.20-15-realtimeBR linux-headers-realtimeBR linux-headers-2.6.20-15-realtimeBR linux-image-2.6.20-15-realtime-traceBR linux-image-debug-2.6.20-15-realtimeBR linux-restricted-modules-realtimeBR linux-restricted-modules-2.6.20-15-realtimeBR cyclictest
Source package:
linux-patch-realtime-preempt-2.6.20BR
Linux restricted modules sources:
[http://www.texware.it/ubuntu/feisty/linux-restricted-modules-2.6.20_2.6.20.5-15.20.tar.gz linux-restricted-modules-2.6.20_2.6.20.5-15.20.tar.gz]
ATTENTION: linux-restricted-modules package is produced with little change in upstream code (present in mm/memory.c). This is necessary for build nvidia and ati(fglrx) close drivers. We discourage the use of such modules and the use of this change for build other closed source driver.
FAQ (for Feisty)
Q) Did you manage to include all the regular Ubuntu kernel patches in it? If not, is it possible to know what was left out? BR A) No i don't include anything because i use _only_ full Ubuntu Kernel (not vanilla, not custom version or other). Ubuntu Realtime kernel is Ubuntu kernel plus realtime preemption patch. Also the configuration (aka /boot/config*) is the same expects for specific realtime options.
Beta available (for Gutsy)
That package are already available in Gutsy archives:BR linux-headers-2.6.22-1-rtBR linux-image-2.6.22-1-rtBR linux-restricted-modules-2.6.22-1-rtBR linux-ubuntu-modules-2.6.22-1-rtBR
FAQ (for Gutsy)
Q) Where can I find documentation? BR A) All existing docs are available on http://rt.wiki.kernel.org
Q) Which are the differences with vanilla Ingo Molnar's patch? BR A simple adaptation to the BenC's kernel git tree isn't the only difference: We work on Ubuntu specific code or drivers (aka linux-ubuntu-modules) and also remove all code which isn't strictly related to realtime preemption support (in example kvm/paravirt/hypercall).
Todo
Set [http://packages.ubuntu.com/gutsy/utils/schedutils schedutils] package for Recommends field in linux-image binary package (for Gutsy).BR
Add cyclictest package into Universe repositary (at this moment it is in [http://revu.tauware.de/details.py?upid=5013 REVU]).
Do a request: Is it possible to rename packages from -rt to -realtime for Gutsy? I think that -realtime is more comprehensible. I would like to know it before that i start to create appropriate meta package.
Investigate: PAM integration ([https://bugs.launchpad.net/ubuntu/+source/pam/+bug/21556 See Bugs 21556])BR
Investigate: I checked Gutsy realtime flavour configuration files. I noticed that CONFIG_HZ is set to 250 HZ. Ubuntu Studio guys ask for 1000 value. Is it still necessary set CONFIG_HZ to 1000? Theoretically no with hrtimers or depends by developer has developed applications?
Ask for clarification: What i should do with this specification now that in the next Ubuntu Gutsy release realtime kernel is present? I set it as superseded or implemented? Or i should delete it?
Lacks linux-image-debug-2.6.22-1-rt, all linux-meta packages and linux-image-trace-2.6.22-1-rt.
BoF agenda and discussion
Any suggestion/feedbacks/requests? [wiki:AlessioIgorBogani alessio] BRBR
I can host the packages on my repo if bandwith is necessary [wiki:Ttoine ttoine] BRBR
I confirm that it seems to rock for music production, jack like it; will do my best to have it in the next Ubuntu Studio, hope that we will have the restricted modules packages for full opengl support, etc... [wiki:Ttoine ttoine] BRBR
http://help.ubuntu.com/community/UbuntuStudioPreparation -> Here you will find the PAM settings we use at the moment with Ubuntu Studio. Alessio, feel free to contact me by mail if you feel that we can tweak better. It is already very good with your kernel. [wiki:Ttoine ttoine] BRBR
The restricted modules are working for me, if taking time uninstalling and then re-install linux-realime-x and linux-restricted-module-x-realtime, on a workstation with nvidia chipset, amd athlon x2 cpu and nvidia graphic card. BRBR
See this on [http://ttoine.net/bazard/desktop-effect-rtkernel.png Screenshot Desktop Effects with realtime kernel] , without any x-runs or scratch on the sound
The only matter is that I can't get the cube working, it stay flat, but I have basic animations. [wiki:Ttoine ttoine] BRBR
Alessio has now joined the UbuntuStudio team. Hopefully we can get this work into Ubuntu for the next release.
-CKontrosBRBR
Hello Alessio, I am getting a lot of those logs on my syslog with your kernel:BR
[ 417.585793] =======================BR [ 483.072990] APIC error on CPU0: 02(02)BR [ 483.073032] [<c01151b8>] smp_error_interrupt+0x68/0x80BR [ 483.073052] [<c01044f8>] error_interrupt+0x28/0x30BR [ 483.073066] [<dc8df62e>] sil_interrupt+0x6e/0x2a0 [sata_sil]BR [ 483.073085] [<c015a3ec>] handle_IRQ_event+0x5c/0x100BR [ 483.073101] [<c015aa3e>] thread_simple_irq+0x5e/0x90BR [ 483.073108] [<c015b45a>] do_irqd+0x28a/0x2f0BR [ 483.073116] [<c015b1d0>] do_irqd+0x0/0x2f0BR [ 483.073119] [<c013ce2a>] kthread+0xba/0xf0BR [ 483.073127] [<c013cd70>] kthread+0x0/0xf0BR [ 483.073132] [<c0104697>] kernel_thread_helper+0x7/0x10BR [ 483.073141] =======================BR
Sorry I dind't mean to spam the wiki
-BR Anyway nor the standard nor the lowlatency kernels behave like that, I also tried rolling outBR my own RT kernel using the configuration from the default one and then tweaking the entriesBR relative to realtime, and that worked without the above issue as well(I test-checked it to makeBR sure it really is RT).BR My system has an AthlonXP 2800+ CPU, and I suspect this has to do with the fact that yourBR kernel is SMP-enabled, some older systems like mine just dont like that.BR Ciao. -gzed
RealTime (last edited 2011-02-23 10:51:46 by cache1)