kernel
Size: 1393
Comment:
|
Size: 3990
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
[[UbuntuStudio/audio-settings | ../UbuntuStudio/audio-settings]] |
|
Line 2: | Line 4: |
== Kernel Testing == === Building your own kernel === A short description of how to build a kernel for testing. |
|
Line 7: | Line 15: |
=== Configurations of interest === | === Configurations of interest for linux-lowlatency === |
Line 11: | Line 19: |
===== To enable the use of the rtirq script: ===== | === To enable low latency (needs to be expanded) === |
Line 13: | Line 21: |
* '''[[http://cateee.net/lkddb/web-lkddb/CMDLINE.html | CONFIG_CMDLINE]]="threadirqs"''' * ''depends on:'' '''[[http://cateee.net/lkddb/web-lkddb/CMDLINE_BOOL.html | CONFIG_CMDLINE_BOOL]]=y''' * ''needed for "threadirqs":'' '''[[http://cateee.net/lkddb/web-lkddb/IRQ_FORCED_THREADING.html | CONFIG_IRQ_FORCED_THREADING=]]y''' |
* '''[[http://cateee.net/lkddb/web-lkddb/PREEMPT.html | CONFIG_PREEMPT]]''' * ''conflicts with:'' '''[[http://cateee.net/lkddb/web-lkddb/PREEMPT_NONE.html |CONFIG_PREEMPT_NONE]]''' * ''conflicts with:'' '''[[http://cateee.net/lkddb/web-lkddb/PREEMPT_NONE.html | CONFIG_PREEMPT_VOLUNTARY]]''' |
Line 17: | Line 25: |
'''TODO''' - do the same for the configs below: | To enable this option edit the config file to have these line read: |
Line 19: | Line 27: |
<<BR>> | {{{{ CONFIG_PREEMPT=y # CONFIG_PREEMPT_NONE # CONFIG_PREEMPT_VOLUNTARY }}}} '''May reduce latency''' * '''[[ http://cateee.net/lkddb/web-lkddb/PREEMPT_RCU.html | CONFIG_PREEMPT_RCU ]]''' {{{ CONFIG_PREEMPT_RCU=y }}} ''additional, related configs'' * '''[[http://cateee.net/lkddb/web-lkddb/TREE_PREEMPT_RCU.html | CONFIG_TREE_PREEMPT_RCU]]''' * '''[[http://cateee.net/lkddb/web-lkddb/RCU_BOOST.html | CONFIG_RCU_BOOST]]''' * '''[[http://cateee.net/lkddb/web-lkddb/RCU_CPU_STALL_DETECTOR.html | CONFIG_RCU_CPU_STALL_DETECTOR]]''' * '''[[http://cateee.net/lkddb/web-lkddb/RCU_CPU_STALL_VERBOSE.html | CONFIG_RCU_CPU_STALL_VERBOSE]]''' as configure in current -lowlatency.. {{{ CONFIG_TREE_PREEMPT_RCU=y |
Line 21: | Line 51: |
# CONFIG_NTP_PPS is not set | |
Line 24: | Line 53: |
# CONFIG_PREEMPT_TRACER is not set CONFIG_TREE_PREEMPT_RCU=y CONFIG_PREEMPT_RCU=y CONFIG_PREEMPT_NOTIFIERS=y # CONFIG_PREEMPT_NONE is not set # CONFIG_PREEMPT_VOLUNTARY is not set CONFIG_PREEMPT=y |
}}} === To enable the use of the rtirq script to change rtprio for devices: === this enables the use of ''threadirqs'' as a kernel boot parameter * '''[[http://cateee.net/lkddb/web-lkddb/IRQ_FORCED_THREADING.html | CONFIG_IRQ_FORCED_THREADING]]''' optionally, to make ''threadirqs'' a default boot parameter * '''[[http://cateee.net/lkddb/web-lkddb/CMDLINE.html | CONFIG_CMDLINE]]''' * ''depends on:'' '''[[http://cateee.net/lkddb/web-lkddb/CMDLINE_BOOL.html | CONFIG_CMDLINE_BOOL]]''' To enable these options edit the config file to have these line read: {{{{ IRQ_FORCED_THREADING=y CONFIG_CMDLINE="threadirqs" CONFIG_CMDLINE_BOOL=y }}}} === High resolution timer: === (Not exactly sure which of CONFIG_HZ=1000 and CONFIG_HZ_1000=y depend on which. ) * '''[[http://cateee.net/lkddb/web-lkddb/HZ_1000.html | CONFIG_HZ_1000]]''' * '''[[http://cateee.net/lkddb/web-lkddb/HZ.html | CONFIG_HZ]]''' * ''depends on:'' '''[[http://cateee.net/lkddb/web-lkddb/NO_HZ.html | CONFIG_NO_HZ]]''' to enable high resolution timer {{{ |
Line 33: | Line 82: |
# CONFIG_NO_HZ is not set }}} (optionally, tickless timer - add the config here) === Need to be investigated === * '''[[http://cateee.net/lkddb/web-lkddb/NTP_PPS.html | CONFIG_NTP_PPS]]''' * '''[[http://cateee.net/lkddb/web-lkddb/SLAB.html | CONFIG_SLAB]]''' * '''[[http://cateee.net/lkddb/web-lkddb/PREEMPT_NOTIFIERS.html | CONFIG_PREEMPT_NOTIFIERS]]''' * '''[[[ http://cateee.net/lkddb/web-lkddb/EXPERT.html | CONFIG_EXPERT]]''' * '''[[http://cateee.net/lkddb/web-lkddb/PREEMPT_TRACER.html | CONFIG_PREEMPT_TRACER]]''' * '''[[http://cateee.net/lkddb/web-lkddb/DEBUG_KERNEL.html | CONFIG_DEBUG_KERNEL]]''' as used in current -lowlatency {{{ # CONFIG_NTP_PPS is not set |
|
Line 34: | Line 100: |
CONFIG_PREEMPT_NOTIFIERS=y | |
Line 35: | Line 102: |
# CONFIG_NO_HZ is not set | # CONFIG_PREEMPT_TRACER is not set |
Line 37: | Line 104: |
<<BR>> | }}} == Additional configs == * [[http://cateee.net/lkddb/web-lkddb/RT_GROUP_SCHED.html | CONFIG_RT_GROUP_SCHED]] |
../UbuntuStudio/audio-settings
Discussion about kernels and kernel configurations here..
Kernel Testing
Building your own kernel
A short description of how to build a kernel for testing.
linux-lowlatency
Shipped with Ubuntu Studio since 12.04 Precise. Principally a standard Ubuntu kernel (no additional patches to the code, allthough the linux-lowlatency shipped with precise includes a minor patch).
Configurations of interest for linux-lowlatency
These configs need to be somewhat documented and tested
To enable low latency (needs to be expanded)
conflicts with: CONFIG_PREEMPT_NONE
conflicts with: CONFIG_PREEMPT_VOLUNTARY
To enable this option edit the config file to have these line read:
CONFIG_PREEMPT=y # CONFIG_PREEMPT_NONE # CONFIG_PREEMPT_VOLUNTARY
May reduce latency
CONFIG_PREEMPT_RCU=y
additional, related configs
as configure in current -lowlatency..
CONFIG_TREE_PREEMPT_RCU=y # CONFIG_RCU_BOOST is not set # CONFIG_RCU_CPU_STALL_DETECTOR is not set # CONFIG_RCU_CPU_STALL_VERBOSE is not set
To enable the use of the rtirq script to change rtprio for devices:
this enables the use of threadirqs as a kernel boot parameter
optionally, to make threadirqs a default boot parameter
depends on: CONFIG_CMDLINE_BOOL
To enable these options edit the config file to have these line read:
IRQ_FORCED_THREADING=y CONFIG_CMDLINE="threadirqs" CONFIG_CMDLINE_BOOL=y
High resolution timer:
(Not exactly sure which of CONFIG_HZ=1000 and CONFIG_HZ_1000=y depend on which. )
depends on: CONFIG_NO_HZ
to enable high resolution timer
CONFIG_HZ_1000=y CONFIG_HZ=1000 # CONFIG_NO_HZ is not set
(optionally, tickless timer - add the config here)
Need to be investigated
as used in current -lowlatency
# CONFIG_NTP_PPS is not set CONFIG_SLAB=y CONFIG_PREEMPT_NOTIFIERS=y # CONFIG_EXPERT is not set # CONFIG_PREEMPT_TRACER is not set # CONFIG_DEBUG_KERNEL is not set
Additional configs
linux-rt
Not in Ubuntu repo since 9.10 Karmic.
UbuntuStudio/audio-settings/kernel (last edited 2012-07-23 10:58:24 by 90-230-166-102-no35)