On Wed, 2011-06-22 at 21:25 +0000,
linux-audio-user-request(a)lists.linuxaudio.org wrote:
Message: 16
Date: Wed, 22 Jun 2011 17:54:40 +0100
From: Rui Nuno Capela
Subject: Re: [LAU] Kernel 2.6.39
To: linux-audio-user(a)lists.linuxaudio.org
Message-ID: <4E021E50.80209(a)rncbc.org>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
if you're about to (aka. -rt) kernel the best
you can, with increased reliability on SCHED_FF scheduling (aka.
realtime scheduling, which is "bread & butter" for the whole jack
ecosystem) and provided you turn on the forced irq threads kernel
boot
option (threadirqs) then PREEMPT is certainly the one to configure
your
custom kernel.
beware, VOLUNTARY_PREEMPT (intended for general purpose desktops?)
and
PREEMPT_NONE (certainly only for servers?) will just give you lousy,
xrun-prone system, with no resemblance whatsoever with a good old but
true -rt kernel ;)
Hi Rui :)
I used the config from the self-build kernel 2.6.33.9-rt31 and run
oldconfig only to configure 2.6.39. I didn't make music until now using
this kernel. Yes, I wish to "emulate" the PREEMPT_RT, since common
PREEMPT only kernels never did, what I needed.
What do I need to set?
$ cat config-2.6.39.1 | grep PREEMPT
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
IIUC this is correct?!
Cheers!
Ralf
PS: SCHED_FF?
$ cat config-2.6.39.1 | grep SCHED
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
# CONFIG_CGROUP_SCHED is not set
# CONFIG_SCHED_AUTOGROUP is not set
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_CFQ_GROUP_IOSCHED=y
CONFIG_DEFAULT_IOSCHED="cfq"
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
CONFIG_SCHED_HRTICK=y
CONFIG_NET_SCHED=y
CONFIG_USB_EHCI_TT_NEWSCHED=y
$ cat config-2.6.39.1 | grep FF
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_BLK_DEV_IDEDMA_SFF=y
# CONFIG_BLK_DEV_OFFBOARD is not set
# Controllers with non-SFF native interface
CONFIG_ATA_SFF=y
# SFF controllers with custom DMA interface
# SATA SFF controllers with BMDMA
# PATA SFF controllers with BMDMA
# PIO-only SFF controllers
CONFIG_INPUT_FF_MEMLESS=m
CONFIG_JOYSTICK_XPAD_FF=y
CONFIG_IPMI_POWEROFF=m
# CONFIG_SPI_TOPCLIFF_PCH is not set
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
CONFIG_DRAGONRISE_FF=y
# CONFIG_HID_EMS_FF is not set
CONFIG_LOGITECH_FF=y
CONFIG_LOGIRUMBLEPAD2_FF=y
# CONFIG_LOGIG940_FF is not set
# CONFIG_LOGIWII_FF is not set
CONFIG_PANTHERLORD_FF=y
CONFIG_GREENASIA_FF=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_THRUSTMASTER_FF=y
CONFIG_ZEROPLUS_FF=y
# CONFIG_EDD_OFF is not set
CONFIG_AFFS_FS=m
CONFIG_JFFS2_FS=m
CONFIG_JFFS2_FS_DEBUG=0
CONFIG_JFFS2_FS_WRITEBUFFER=y
# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
CONFIG_JFFS2_SUMMARY=y
CONFIG_JFFS2_FS_XATTR=y
CONFIG_JFFS2_FS_POSIX_ACL=y
CONFIG_JFFS2_FS_SECURITY=y
CONFIG_JFFS2_COMPRESSION_OPTIONS=y
CONFIG_JFFS2_ZLIB=y
CONFIG_JFFS2_LZO=y
CONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not set
# CONFIG_JFFS2_CMODE_NONE is not set
CONFIG_JFFS2_CMODE_PRIORITY=y
# CONFIG_JFFS2_CMODE_SIZE is not set
# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
CONFIG_RING_BUFFER=y
CONFIG_RING_BUFFER_ALLOW_SWAP=y