diff options
Diffstat (limited to 'kernels/linux-libre-rt')
-rw-r--r-- | kernels/linux-libre-rt/PKGBUILD | 64 | ||||
-rw-r--r-- | kernels/linux-libre-rt/config.i686 | 2 | ||||
-rw-r--r-- | kernels/linux-libre-rt/config.x86_64 | 2 | ||||
-rw-r--r-- | kernels/linux-libre-rt/ext4-options.patch | 49 | ||||
-rw-r--r-- | kernels/linux-libre-rt/linux-libre-rt.install | 6 |
5 files changed, 79 insertions, 44 deletions
diff --git a/kernels/linux-libre-rt/PKGBUILD b/kernels/linux-libre-rt/PKGBUILD index 336d58cb0..1b18356e4 100644 --- a/kernels/linux-libre-rt/PKGBUILD +++ b/kernels/linux-libre-rt/PKGBUILD @@ -6,14 +6,15 @@ # Contributor (Parabola): Nicolás Reynolds <fauno@kiwwwi.com.ar> # Contributor (Parabola): Jorge Lopez <jorginho@adinet.com.uy> # Contributor (Parabola): André Silva <andre.paulista@adinet.com.uy> +# Contributor (Parabola): Márcio Silva <coadde@adinet.com.uy> pkgbase=linux-libre-rt -pkgname=('linux-libre-rt' 'linux-libre-rt-headers' 'linux-libre-rt-docs') # Build stock -LIBRE kernel +pkgname=('linux-libre-rt' 'linux-libre-rt-headers') # Build stock -LIBRE kernel with RT support # pkgname=linux-custom # Build kernel with a different name -_kernelname=${pkgname#linux-libre} +_kernelname=-LIBRE-RT _basekernel=3.2 -_releasever=6 -_rtpatchver=rt13 +_releasever=11 +_rtpatchver=rt20 _pkgver=${_basekernel}.${_releasever} pkgver=${_basekernel}.${_releasever}_${_rtpatchver} pkgrel=1 @@ -32,17 +33,19 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-li 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' - 'i915-gpu-finish.patch') + 'i915-gpu-finish.patch' + 'ext4-options.patch') md5sums=('27c641c4f6785fc647cdd3e44963a55c' - 'c4b411e90294fcb768d5242a6c21c0d7' - '28f2792000aa309437d8aefdcba65634' - 'b82b72aed2edc07797f7c29adf0b8793' - '92071f14b33bf6d18be512e61989d0c4' + '09abd6a4e9ae7373a3151b61781ab2fe' + 'b469c9b82f05abe5491154ea18aa06c9' + '6141ab0cb60a5cf9e6ee3bdf8c8c79b1' + 'c2f3423d7c7d8e5776e961b75a52a3fc' '0d001b0277f318bc40a263aaa980d44e' '04b21c79df0a952c22d681dd4f4562df' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' - '4cd79aa147825837dc8bc9f6b736c0a0') + '4cd79aa147825837dc8bc9f6b736c0a0' + 'c8299cf750a84e12d60b372c8ca7e1e8') build() { cd "${srcdir}/linux-${_basekernel}" @@ -73,6 +76,10 @@ build() { # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch" + # fix ext4 module to mount ext3/2 correct + # https://bugs.archlinux.org/task/28653 + patch -Np1 -i "${srcdir}/ext4-options.patch" + cat "${srcdir}/config.${CARCH}" > ./.config # simpler if [ "${_kernelname}" != "" ]; then @@ -108,13 +115,12 @@ build() { } package_linux-libre-rt() { - pkgdesc="The Linux-libre Kernel and modules with RT patches" - groups=('base') + pkgdesc="The Linux-libre Kernel and modules (with realtime preemption)" depends=('coreutils' 'module-init-tools>=3.16' 'mkinitcpio>=0.7') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26' "linux=$_pkgver") - conflicts=('kernel26' 'kernel26-libre' 'linux') - replaces=('kernel26' 'kernel26-libre' 'linux') + provides=('kernel26-rt' "linux-rt=$_pkgver") + conflicts=('kernel26-rt' 'kernel26-libre-rt' 'linux-rt') + replaces=('kernel26-rt' 'kernel26-libre-rt' 'linux-rt') backup=("etc/mkinitcpio.d/${pkgname}.preset") install=${pkgname}.install @@ -137,10 +143,6 @@ package_linux-libre-rt() { # set correct depmod command for install sed \ - -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/g" \ - -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \ - -i "${startdir}/${pkgname}.install" - sed \ -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ @@ -160,10 +162,10 @@ package_linux-libre-rt() { } package_linux-libre-rt-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre kernel" - provides=('kernel26-headers' "linux-headers=${_pkgver}") - conflicts=('kernel26-headers' 'kernel26-libre-headers' 'linux-headers') - replaces=('kernel26-headers' 'kernel26-libre-headers' 'linux-headers') + pkgdesc="Header files and scripts for building modules for linux-libre kernel (with realtime preemption)" + provides=('kernel26-rt-headers' "linux-rt-headers=${_pkgver}") + conflicts=('kernel26-rt-headers' 'kernel26-libre-rt-headers' 'linux-rt-headers') + replaces=('kernel26-rt-headers' 'kernel26-libre-rt-headers' 'linux-rt-headers') mkdir -p "${pkgdir}/lib/modules/${_kernver}" @@ -290,19 +292,3 @@ package_linux-libre-rt-headers() { rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa} } -package_linux-libre-rt-docs() { - pkgdesc="Kernel hackers manual - HTML documentation that comes with the Linux-libre kernel." - provides=('kernel26-docs' "linux-docs=$_pkgver") - conflicts=('kernel26-docs' 'kernel26-libre-docs' 'linux-docs') - replaces=('kernel26-docs' 'kernel26-libre-docs' 'linux-docs') - - cd "${srcdir}/linux-${_basekernel}" - - mkdir -p "${pkgdir}/usr/src/linux-${_kernver}" - cp -al Documentation "${pkgdir}/usr/src/linux-${_kernver}" - find "${pkgdir}" -type f -exec chmod 444 {} \; - find "${pkgdir}" -type d -exec chmod 755 {} \; - - # remove a file already in linux package - rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile" -} diff --git a/kernels/linux-libre-rt/config.i686 b/kernels/linux-libre-rt/config.i686 index dfb099e19..749ad1e09 100644 --- a/kernels/linux-libre-rt/config.i686 +++ b/kernels/linux-libre-rt/config.i686 @@ -60,7 +60,7 @@ CONFIG_IRQ_WORK=y CONFIG_EXPERIMENTAL=y CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="libre-rt" +CONFIG_LOCALVERSION="-LIBRE-RT" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y diff --git a/kernels/linux-libre-rt/config.x86_64 b/kernels/linux-libre-rt/config.x86_64 index 37cea6fa0..13386d7f3 100644 --- a/kernels/linux-libre-rt/config.x86_64 +++ b/kernels/linux-libre-rt/config.x86_64 @@ -62,7 +62,7 @@ CONFIG_IRQ_WORK=y CONFIG_EXPERIMENTAL=y CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="-libre-rt" +CONFIG_LOCALVERSION="-LIBRE-RT" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y diff --git a/kernels/linux-libre-rt/ext4-options.patch b/kernels/linux-libre-rt/ext4-options.patch new file mode 100644 index 000000000..812b05f04 --- /dev/null +++ b/kernels/linux-libre-rt/ext4-options.patch @@ -0,0 +1,49 @@ +Report: https://bbs.archlinux.org/profile.php?id=33804 +Signed-off-by: Tom Gundersen <teg@jklm.no> +Cc: Thomas Baechler <thomas@archlinux.org> +Cc: Tobias Powalowski <tobias.powalowski@googlemail.com> +Cc: Dave Reisner <d@falconindy.com> +--- + fs/ext4/super.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/fs/ext4/super.c b/fs/ext4/super.c +index 502c61f..30de9cd 100644 +--- a/fs/ext4/super.c ++++ b/fs/ext4/super.c +@@ -1333,6 +1333,7 @@ enum { + Opt_inode_readahead_blks, Opt_journal_ioprio, + Opt_dioread_nolock, Opt_dioread_lock, + Opt_discard, Opt_nodiscard, Opt_init_itable, Opt_noinit_itable, ++ Opt_nocheck, Opt_reservation, Opt_noreservation, Opt_journal_inum, + }; + + static const match_table_t tokens = { +@@ -1408,6 +1409,10 @@ static const match_table_t tokens = { + {Opt_init_itable, "init_itable=%u"}, + {Opt_init_itable, "init_itable"}, + {Opt_noinit_itable, "noinit_itable"}, ++ {Opt_nocheck, "nocheck"}, ++ {Opt_reservation, "reservation"}, ++ {Opt_noreservation, "noreservation"}, ++ {Opt_journal_inum, "journal=%u"}, + {Opt_err, NULL}, + }; + +@@ -1904,6 +1909,16 @@ set_qf_format: + case Opt_noinit_itable: + clear_opt(sb, INIT_INODE_TABLE); + break; ++#ifdef CONFIG_EXT4_USE_FOR_EXT23 ++ case Opt_nocheck: ++ case Opt_reservation: ++ case Opt_noreservation: ++ case Opt_journal_inum: ++ ext4_msg(sb, KERN_WARNING, ++ "ext3 mount option \"%s\" ignored " ++ "by ext4 module", p); ++ break; ++#endif + default: + ext4_msg(sb, KERN_ERR, + "Unrecognized mount option \"%s\" "
\ No newline at end of file diff --git a/kernels/linux-libre-rt/linux-libre-rt.install b/kernels/linux-libre-rt/linux-libre-rt.install index 5c40a32e9..8ae1568d8 100644 --- a/kernels/linux-libre-rt/linux-libre-rt.install +++ b/kernels/linux-libre-rt/linux-libre-rt.install @@ -1,8 +1,8 @@ # arg 1: the new package version # arg 2: the old package version -KERNEL_NAME= -KERNEL_VERSION=3.2.2-LIBRE +KERNEL_NAME=-rt +KERNEL_VERSION=3.2.11-1-LIBRE-RT post_install () { # updating module dependencies @@ -12,7 +12,7 @@ post_install () { mkinitcpio -p linux-libre${KERNEL_NAME} # compat symlinks for the official kernels only - if [ -z "${KERNEL_NAME}" -o "${KERNEL_NAME}" = "-lts" ]; then + if [ -z "${KERNEL_NAME}" -o "${KERNEL_NAME}" = "-rt" ]; then loaders="$(find /boot -name syslinux.cfg -or -name extlinux.conf -or -name grub.cfg -or -name menu.lst)" [ -f /etc/lilo.conf ] && loaders="$loaders /etc/lilo.conf" if [ -n "${loaders}" ] && grep -q -e vmlinuz26 -e kernel26.img -e kernel26-fallback.img $loaders; then |