You are not logged in.

#1 2009-05-03 08:33:24

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

kernel26-ice, RT update/option

The below is now outdated, because I've just submitted the kernel26-rt-ice package to the AUR and will be maintaining it. It can be found here. Please use this thread for support request/questions. Of course, AFTER googling/searching the wiki/forums.

Hi all,

Please let me draw your attention to kernel26-ice, maintained by iceman81. Since 14-Apr-09, the RT patch has been tacked on to that kernel, and can be applied simply by changing a single variable in the PKGBUILD.

However, the kernel is first and foremost and ICE kernel, so updates to the RT version will not be reflected by a changed version number. In other words, yaourt will not notify you its been updated, so on and so forth. So, the purpose of this thread is so that you can be informed everytime there is an update to the RT patch, as applied to kernel26-ice. I'm responsible for the thread, and will simply post a message here everytime there is an update, so subscribe here if you like.

Note: Please simply click 'Subscribe to this topic' right at the bottom (its above the Quick post region, on the left) instead of replying to subscribe, so that subscribers do not receive non-related notifications. Thank you all for your cooperation, and iceman81 for your maintainance of the ice, and now the RT, kernels.

Throughout the lifespan of 2.6.30 there was no workable -rt kernel. This will likely recur at 2.6.32. Because of that, I'll be keeping here a record of the last working PKGBUILD I have used from kernel26-ice, with the appropriate modifications for RT. I do not want to maintain a separate PKGBUILD on the AUR, as this is iceman81's project, and I do not have the skills to do more than modify his builds.

# Contributor: Giuseppe Calderaro <giuseppecalderaro@gmail.com>

pkgname=kernel26-ice
pkgver=2.6.31
pkgrel=2
pkgdesc="The Linux Kernel and modules with gentoo-sources patchset and tuxonice support"
arch=('i686' 'x86_64')
license=('GPL2')
url="http://www.kernel.org"
backup=('boot/kconfig26-ice' etc/mkinitcpio.d/${pkgname}.preset etc/mkinitcpio.d/${pkgname}-fallback.conf)
depends=('coreutils' 'module-init-tools' 'mkinitcpio>=0.5.15' 'kernel26-firmware')
install=kernel26-ice.install

### User defined variables
bfs_scheduler="0"
enable_fastboot="0"
keep_source_code="0"
menuconfig="0"
realtime_patch="1"
###

source=(http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.31.tar.bz2
    # http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.31.1.bz2
    http://www.kernel.org/pub/linux/kernel/projects/rt/patch-2.6.31-rt11.bz2
    http://sources.gentoo.org/viewcvs.py/*checkout*/linux-patches/genpatches-2.6/trunk/2.6.31/4100_dm-bbr.patch    
    http://sources.gentoo.org/viewcvs.py/*checkout*/linux-patches/genpatches-2.6/trunk/2.6.31/4202_fbcondecor-0.9.6.patch
    http://sources.gentoo.org/viewcvs.py/*checkout*/linux-patches/genpatches-2.6/trunk/2.6.31/4400_alpha-sysctl-uac.patch
    http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/reiser4-for-2.6.30.patch.gz
    http://www.tuxonice.net/downloads/all/current-tuxonice-for-2.6.31.patch-20090911-v1.bz2
    http://ck.kolivas.org/patches/bfs/2.6.31-sched-bfs-232.patch
    Auke-Kok-s-patch-to-kernel-2.6.30.patch
    config
    config.x86_64
    $pkgname.preset
    mkinitcpio-$pkgname.conf)

md5sums=('84c077a37684e4cbfa67b18154390d8a'
         '7be575537db7ff654f8e53d4e17d1954'
         'e501d050605a7399e7b12a6b14903631'
         'b62bd712dd0d45b32ec73f522018a3a7'
         '21562518ab45d8be9c67d316aef9399f'
         'ecd82eb87e5da25e38db1ef34fd32b33'
         '0683813ac1a521408b4c136d72fbb9d2'
         '389ee48a8f4d0612dc32fc3f0ba8123c'
         '5bd5c60b7e7664e8794279e99cafd185'
         'ff6fce30588368d961c3a61c4a623207'
         '575d39660246322e185b07bc3be698be'
         '541973d72e24a2def82d33884a781ee1'
         '07dc6997d19340b654f92c1d6a120cc0')

build() {
    [ "${CARCH}" = "i686" ]   && KARCH=x86
    [ "${CARCH}" = "x86_64" ] && KARCH=x86

    cd $startdir/src/linux-$pkgver
    
    # Applying official patch
    # echo "Applying patch-$pkgver.1"
    # patch -Np1 -i $startdir/src/patch-$pkgver.6 || return 1

    # Applying realtime patch
    if [ "$realtime_patch" = "1" ]; then
       echo "Applying real time patch"
       patch -Np1 -i $startdir/src/patch-2.6.31-rt11 || return 1       
    fi

    # Applying base gentoo patches
    for i in $(ls $startdir/src/[1-3][0-9][0-9][0-9]*);do
        echo "Applying $i" 
    patch -Np1 -i $i || return 1
    done

    if [ "$realtime_patch" = "0" ]; then
       # Applying extra gentoo patches
       for i in $(ls $startdir/src/[4-9][0-9][0-9][0-9]*); do
              echo "Applying $i" 
              patch -Np1 -i $i || return 1
       done
    fi

    # applying reiserfs4 patch
    echo "Applying reiser4-for-2.6.30.patch" 
    patch -Np1 -i $startdir/src/reiser4-for-2.6.30.patch || return 1

    if [ "$realtime_patch" = "0" ]; then
       # applying tuxonice patch
       echo "Applying current-tuxonice-for-2.6.31.patch-20090911-v1"
       patch -Np1 -i $startdir/src/current-tuxonice-for-2.6.31.patch-20090911-v1 || return 1
    fi

    if [ "$enable_fastboot" = "1" ]; then
       # applying fastboot patch
       echo "Applying Auke-Kok-s-patch-to-kernel-2.6.30.patch"
       patch -Np1 -i $startdir/src/Auke-Kok-s-patch-to-kernel-2.6.30.patch || return 1
    fi     

    if [ "$bfs_scheduler" = "1" ]; then
       # applying BFS scheduler patch
       echo "Applying BFS scheduler patch"
       patch -Np1 -i $startdir/src/2.6.31-sched-bfs-230.patch || return 1
    fi     

    # remove extraversion
    sed -i 's|^EXTRAVERSION = .*$|EXTRAVERSION =|g' Makefile
    
    # load configuration for i686 or x86_64
    if [ "$CARCH" = "x86_64" ]; then
    cat ../config.x86_64 > ./.config
    else
    cat ../config > ./.config
    fi
    
    # get kernel version
    make prepare
    _kernver="$(make kernelrelease)"
    
    # configure kernel    
    if [ "$menuconfig" = "1" ]; then
      make menuconfig
    fi
    yes "" | make config
    
    if [ "$keep_source_code" = "1" ]; then
    echo -n "Copying source code..."
        # Keep the source code   
    cd $startdir || return 1
    mkdir -p $startdir/pkg/usr/src || return 1
    cp -a $startdir/src/linux-$pkgver $startdir/pkg/usr/src/linux-$_kernver || return 1
    
        #Add a link from the modules directory
    mkdir -p $startdir/pkg/lib/modules/$_kernver || return 1
    cd $startdir/pkg/lib/modules/$_kernver || return 1
    rm -f source
    ln -s ../../../usr/src/linux-$_kernver source || return 1
    echo "OK"
    fi

    cd $startdir/src/linux-$pkgver
    # build kernel
    make bzImage modules || return 1
    mkdir -p $startdir/pkg/{lib/modules,boot}
    make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1
    install -D -m644 System.map $startdir/pkg/boot/System.map26-ice
    install -D -m644 arch/$KARCH/boot/bzImage $startdir/pkg/boot/vmlinuz26-ice
    install -D -m644 Makefile $startdir/pkg/usr/src/linux-$_kernver/Makefile
    install -D -m644 kernel/Makefile $startdir/pkg/usr/src/linux-$_kernver/kernel/Makefile
    install -D -m644 .config $startdir/pkg/usr/src/linux-$_kernver/.config
    install -D -m644 .config $startdir/pkg/boot/kconfig26-ice
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/include
    
    for i in acpi asm-{generic,$KARCH} config linux math-emu media net pcmcia scsi sound trace video; do
    cp -a include/$i $startdir/pkg/usr/src/linux-$_kernver/include/          
    done
    
    # copy arch includes for external modules
    mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH    
    cp -a arch/$KARCH/include ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/

    # copy files necessary for later builds, like nvidia and vmware
    cp Module.symvers $startdir/pkg/usr/src/linux-$_kernver
    cp -a scripts $startdir/pkg/usr/src/linux-$_kernver
    
    # fix permissions on scripts dir
    chmod og-w -R $startdir/pkg/usr/src/linux-$_kernver/scripts
    
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/kernel
    
    cp arch/$KARCH/Makefile $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/
    if [ "${CARCH}" = "i686" ]; then
    cp arch/$KARCH/Makefile_32.cpu $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/
    fi
    cp arch/$KARCH/kernel/asm-offsets.s $startdir/pkg/usr/src/linux-$_kernver/arch/$KARCH/kernel/
    
    # add headers for lirc package
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video
    cp drivers/media/video/*.h  $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video/
    for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102 usbvideo zc0301
    do
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video/$i
    cp -a drivers/media/video/$i/*.h $startdir/pkg/usr/src/linux-$_kernver/drivers/media/video/$i
    done
    
    # add dm headers
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/drivers/md
    cp drivers/md/*.h  $startdir/pkg/usr/src/linux-$_kernver/drivers/md
    
    # add inotify.h
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/include/linux
    cp include/linux/inotify.h $startdir/pkg/usr/src/linux-$_kernver/include/linux/
    
    # add CLUSTERIP file for iptables
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/net/ipv4/netfilter/
    cp net/ipv4/netfilter/ipt_CLUSTERIP.c $startdir/pkg/usr/src/linux-$_kernver/net/ipv4/netfilter/
    
    # add wireless headers
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/net/mac80211/
    cp net/mac80211/*.h $startdir/pkg/usr/src/linux-$_kernver/net/mac80211/
    
    # add xfs and shmem for aufs building
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/fs/xfs
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/mm
    cp fs/xfs/xfs_sb.h $startdir/pkg/usr/src/linux-$_kernver/fs/xfs/xfs_sb.h
    cp mm/shmem.c $startdir/pkg/usr/src/linux-$_kernver/mm/shmem.c
    
    # add vmlinux
    cp vmlinux $startdir/pkg/usr/src/linux-$_kernver
    
    # copy in Kconfig files
    for i in $(find . -name "Kconfig*")
    do 
    mkdir -p $startdir/pkg/usr/src/linux-$_kernver/$(echo $i | sed 's|/Kconfig.*||')
    cp $i $startdir/pkg/usr/src/linux-$_kernver/$i
    done
    
    cd $startdir/pkg/usr/src/linux-$_kernver/include && ln -s asm-$KARCH asm
    
    chown -R root.root $startdir/pkg/usr/src/linux-$_kernver
    find $startdir/pkg/usr/src/linux-$_kernver -type d -exec chmod 755 {} \;
    cd $startdir/pkg/lib/modules/$_kernver && (rm -f source build; ln -sf ../../../usr/src/linux-$_kernver build)
    
    # install fallback mkinitcpio.conf file and preset file for kernel
    install -m644 -D $startdir/src/$pkgname.preset $startdir/pkg/etc/mkinitcpio.d/$pkgname.preset || return 1
    install -m644 -D $startdir/src/mkinitcpio-$pkgname.conf $startdir/pkg/etc/mkinitcpio.d/$pkgname-fallback.conf || return 1
    
    # set correct depmod command for install
    sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" $startdir/$pkgname.install
    echo -e "# DO NOT EDIT THIS FILE\nALL_kver='${_kernver}'" > $startdir/pkg/etc/mkinitcpio.d/$pkgname.kver

    if [ "$keep_source_code" = "0" ]; then
        # remove unneeded architectures   
    rm -rf $startdir/pkg/usr/src/linux-$_kernver/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}
    fi
    
    # Delete firmware directory
    rm -rf ${pkgdir}/lib/firmware
}

FOR NVIDIA USERS:- Currently (22-Sep-09) nvidia drivers cannot compile on the above kernel. I have uploaded the following package - nvidia-beta-ice-rt which applies the appropriate patches to the latest nvidia-beta non-free drivers to allow them to compile on this RT kernel. Please post bug-reports here or in the comments.

Last edited by ngoonee (2009-11-10 04:09:53)


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#2 2009-05-03 13:44:35

iceman81
Member
From: Cambridge
Registered: 2007-07-25
Posts: 59
Website

Re: kernel26-ice, RT update/option

2.6.29.2 rt11 is out.

updated ;-)

Last edited by iceman81 (2009-05-03 13:45:05)

Offline

#3 2009-05-14 01:07:11

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

2.6.29.3 rt13 is out, and has been updated by iceman81


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#4 2009-06-14 14:52:23

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

So far we're up to 2.6.29.4 rt16, the last few releases have resulted in a package version change so I didn't bother to update. 2.6.30 probably coming out soon, so if the rt patch for that is slow please expect breakage for a while.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#5 2009-09-14 00:57:35

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

We are now at 2.6.31. No working rt patch for 2.6.30 was found, so this is the first new RT patch in kernel26-ice in 3 months. I'm downloading the sources now, if the compile goes fine I'll paste the PKGBUILD in the OP. This is so that, if in future kernel versions when -ice moves ahead -rt is left behind there will be a reference PKGBUILD for those who still want the RT kernel.

I've considered doing an AUR package, but there's already one old one by Fackamoto i believe, so unless that is orphaned this topic will be the 'distribution' channel for RT via kernel26-ice.

EDIT: Does not work, the patch is for rc8 and I believe there have been changes since then. Will continue trying for when new patches are forthcoming.

Last edited by ngoonee (2009-09-14 01:45:50)


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#6 2009-09-18 14:30:43

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

The current PKGBUILD works. In a while I'll post up the working PKGBUILD for posterity.

Point to note, I could not use the binary Nvidia driver with this kernel.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#7 2009-09-18 16:19:57

iceman81
Member
From: Cambridge
Registered: 2007-07-25
Posts: 59
Website

Re: kernel26-ice, RT update/option

What's the problem with the nvidia drivers?

Offline

#8 2009-09-18 16:50:21

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

Only for the rt-patched, iceman81. kernel26-ice works fine with binary nvidia. The RT ML has some patches for the nvidia installer, but I haven't tried applying them yet, and they're not for my version of the nvidia installer.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#9 2009-09-19 19:39:14

iceman81
Member
From: Cambridge
Registered: 2007-07-25
Posts: 59
Website

Re: kernel26-ice, RT update/option

ngoonee wrote:

Only for the rt-patched, iceman81. kernel26-ice works fine with binary nvidia. The RT ML has some patches for the nvidia installer, but I haven't tried applying them yet, and they're not for my version of the nvidia installer.

If you are interested you could manage nvidia-ice package to add the support for rt kernel, using a variable like i did in the kernel pkgbuild

Offline

#10 2009-09-19 22:38:08

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

I know that, but I haven't even gotten it to work on my own machine yet smile. Not a top priority at the moment (no music-related work to do as of now), but I do want it working eventually so will come aroundn to that.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#11 2009-09-22 12:19:28

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

Have done as you suggested to upload the nvidia installer to AUR. Links as well as a saved copy of your PKGBUILD are available in OP.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

#12 2009-11-10 04:07:30

ngoonee
Forum Fellow
From: Between Thailand and Singapore
Registered: 2009-03-17
Posts: 7,356

Re: kernel26-ice, RT update/option

Submitted a kernel26-rt-ice package, updating first post to reflect that.


Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.

Offline

Board footer

Powered by FluxBB