From 561bfa38217d9e493d2a46f201ff77e599f66d13 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 12 Dec 2016 10:34:41 +0100 Subject: [PATCH 1/3] linux: Add stable version 4.8.14 Do as Greg says [1][2]: > All users of the 4.8 kernel series must upgrade. Changes for Linux 4.8.13 [3][4]: > A few moments ago, renowned Linux kernel maintainer Greg Kroah-Hartman > had the pleasure of announcing the general availability of the Linux > kernel 4.8.13 and Linux kernel 4.4.37 LTS maintenance updates. > > While many rolling GNU/Linux distributions have just received the > Linux 4.8.12 kernel, it looks like Linux kernel 4.8.13 is now > available with more improvements and bug fixes, but it's not a major > milestone. According to the appended shortlog and the diff since last > week's Linux 4.8.12 kernel release, a total of 46 files were changed, > with 214 insertions and 95 deletions. > > "I'm announcing the release of the 4.8.13 kernel. All users of the 4.8 > kernel series must upgrade," said Greg Kroah-Hartman. "The updated > 4.8.y git tree can be found at: > git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git > linux-4.8.y and can be browsed at the normal kernel.org git web > browser: > http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary." > > ### Minor AMDGPU improvements, lots of ARM64 fixes ### > > Looking at the changes, we can notice that Linux kernel 4.8.13 brings > updated ADMGPU and Radeon graphics drivers with fixes for the > availability of port PM, lots of ARM64 (AArch64) improvements, but > also some small fixes for the x86 and ARC architectures, updated ATA > (libata-scsi), CLK (sunxi), Intel i915, MediaTek, wireless (Marvell > mwifiex), PCI-E, PWM, and SCSI drivers. > > There's also a fix for the OverlayFS file system, support for > detecting missing primaryif during tp_send as an error to the > B.A.T.M.A.N. Advanced routing protocol, a few KVM (Kernel-based > Virtual Machine) improvements, and a bunch of core kernel and mm > changes. The Linux kernel 4.8.13 source archive is now available for > download from kernel.org and we recommend to update as soon as > possible. Changes for Linux 4.8.14 [5][6]: > A few moments ago, Linux kernel maintainer Greg Kroah-Hartman announced > the release of Linux kernel 4.8.14, the fourteenth maintenance update to > the most advanced kernel series. > > Believe it or not, Linux kernel 4.8.14 is here only two days after the > December 8 release of Linux kernel 4.8.13, which wasn't a big patch. > However, it looks like today's update brings some more improvements, and > according to the appended shortlog and the diff since the previous > version, it changes a total of 56 files, with 388 insertions and 164 > deletions. > > "Turns out I'm going to be on a very long flight early tomorrow morning, > so I figured it would be good to get this kernel out now, instead of > delaying it by an extra day. So, I'm announcing the release of the > 4.8.14 kernel," said Greg Kroah-Hartman in today's mailing list > announcement. "All users of the 4.8 kernel series must upgrade." > > ### Mostly networking improvements and updated Ethernet drivers ### > > Linux kernel 4.8.14 is all about networking improvements, as it updates > the networking stack with a bunch of changes and fixes to the Datagram > Congestion Control Protocol (DCCP), Distributed Switch Architecture > (DSA), IPv4, IPv6, Layer 2 Tunneling Protocol (L2TP), Netlink, packet > scheduler, and Transparent Inter-process Communication (TIPC) > implementations. > > Additionally, there are various enhancements to the Broadcom, Cadence, > Marvell, and Renesas Ethernet network controller drivers, as well as to > the Broadcom support for the Distributed Switch Architecture (DSA) > subsystem. Last but not least, Linux kernel 4.8.14 fixes a couple of > issues with the SPARC hardware architecture. As usual, you are urged to > update your kernel packages as soon as possible. > > Linux kernel 4.8.14 is now available for download from kernel.org or via > our web portal. Also today, Greg Kroah-Hartman released the > thirty-eighth maintenance update to the long-term supported Linux 4.4 > kernel series, so if you're using a GNU/Linux distribution powered by > that kernel, you are urged to update as soon as possible to Linux kernel > 4.4.38 LTS. This release also fixes the local privilege escalation CVE-2016-8655 [7][8]. [1] https://lkml.org/lkml/2016/12/8/552 [2] https://lkml.org/lkml/2016/12/10/127 [3] http://news.softpedia.com/news/linux-kernel-4-8-13-launches-with-arm64-and-amdgpu-improvements-kvm-fixes-510831.shtml [4] https://cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.13 [5] http://news.softpedia.com/news/linux-kernel-4-8-14-hits-the-streets-with-numerous-networking-improvements-more-510874.shtml [6] https://cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.14 [7] https://www.heise.de/newsticker/meldung/Root-Rechte-durch-Linux-Luecke-3565365.html [8] http://seclists.org/oss-sec/2016/q4/621 --- linux-4.8.14-128.bee | 79 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100755 linux-4.8.14-128.bee diff --git a/linux-4.8.14-128.bee b/linux-4.8.14-128.bee new file mode 100755 index 000000000..fc68c0aaa --- /dev/null +++ b/linux-4.8.14-128.bee @@ -0,0 +1,79 @@ +#!/bin/env beesh + +# note: CONFIG=/boot/config-WHATEVER BEE_MAKEFLAGS='-j 40' ./linux-xxx.bee + +KERNELVERSION=${PKGVERSION} +if [ -z "${PKGVERSION[3]}" ] ; then + KERNELVERSION=${KERNELVERSION}.0 +fi + +# append extra version to get for example 4.8.0-rc4 +KERNELVERSION=${KERNELVERSION}${PKGEXTRAVERSION_DASH} + +echo $KERNELVERSION + +SRCURL[0]="https://cdn.kernel.org/pub/linux/kernel/v${PKGVERSION[1]}.x/linux-${PKGVERSION}${PKGEXTRAVERSION_DASH}.tar.xz" + +# EXCLUDE="" + +#CONFIG= + +KERNELLOCAL=".mx64.${PKGREVISION}" +FULLKERNELVERSION="${KERNELVERSION}${KERNELLOCAL}" + +B=${S} + +mee_patch() { + echo "PATCH $@" + bee_patch $@ +} + +mee_configure() { + echo "configure $@" + if [ -e /proc/config.gz ] ; then + zcat /proc/config.gz >config-current + RUNNING=config-current + else + RUNNING=/boot/config-$(uname -r) + fi + + : ${CONFIG:=${RUNNING}} + + if [ ! -e ${CONFIG} ] ; then + echo "can't find config '${CONFIG}'" + exit 1 + fi + + cp -v ${CONFIG} .config + + LOCALVERSION="\"${KERNELLOCAL}\"" + sed -i -e "s@CONFIG_LOCALVERSION=.*@CONFIG_LOCALVERSION=${LOCALVERSION}@" .config + + echo "doing make -C ${S} olddefconfig in ${PWD} .." + + make olddefconfig + + echo "doing make -C ${S} menuconfig in ${PWD} .." + + make menuconfig +} + +mee_build() { + echo "build $@" + make ${BEE_MAKEFLAGS} +} + +mee_install() { + echo "install $@" + + make modules_install INSTALL_MOD_PATH=${D} + make install INSTALL_PATH=${D}/boot +# make firmware_install INSTALL_MOD_PATH=${D} + + rm -v ${D}/lib/modules/${FULLKERNELVERSION}/{source,build} + + ln -sv /usr/src/linux/${PKGALLPKG}/source ${D}/lib/modules/${FULLKERNELVERSION}/source + ln -sv /usr/src/linux/${PKGALLPKG}/build ${D}/lib/modules/${FULLKERNELVERSION}/build + + ln -sv bzImage-${FULLKERNELVERSION} ${D}/boot/mariux.${PKGREVISION} +} From 05384d24420afe9b820220a9bf86f9dd42748358 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 12 Dec 2016 10:41:42 +0100 Subject: [PATCH 2/3] nvidia_linux: Build 340.98 for Linux 4.8.14 --- nvidia_linux-4.8.14-128-340.98-0.bee | 88 ++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100755 nvidia_linux-4.8.14-128-340.98-0.bee diff --git a/nvidia_linux-4.8.14-128-340.98-0.bee b/nvidia_linux-4.8.14-128-340.98-0.bee new file mode 100755 index 000000000..6bd106763 --- /dev/null +++ b/nvidia_linux-4.8.14-128-340.98-0.bee @@ -0,0 +1,88 @@ +#!/bin/env beesh + +# calculate package extra versions and legacy level +# - use extraversions to define nvidia extraversion and/or legacy level +# - legacy level should be the last part of extraversion +# - legacy level 2 to 5 will be calculated from version number.. + +mxnvversion=${PKGEXTRAVERSION##*_} +: ${mxnvversion=current} + +nvextraversion="${PKGEXTRAVERSION_DASH}" + +if [ "${mxnvversion:0:6}" = "legacy" -o "${mxnvversion}" = "current" ] ; then + nvextraversion="${nvextraversion%_*}" + nvextraversion="${nvextraversion#-${mxnvversion}}" +else + if [ "${PKGVERSION:0:4}" = "340." ] ; then + mxnvversion="legacy5" + elif [ "${PKGVERSION:0:4}" = "304." ] ; then + mxnvversion="legacy4" + elif [ "${PKGVERSION:0:7}" = "173.14." ] ; then + mxnvversion="legacy3" + elif [ "${PKGVERSION:0:6}" = "96.43." ] ; then + mxnvversion="legacy2" + else + mxnvversion="current" + fi +fi + +print_info "calculated mxnvversion = '${mxnvversion}'" +print_info "calculated nvextraversion = '${nvextraversion}'" + +NVIDIA_ARCHIVE="NVIDIA-Linux-x86_64-${PKGVERSION}${nvextraversion}.run" + +SRCURL[0]="ftp://download.nvidia.com/XFree86/Linux-x86_64/${PKGVERSION}/${NVIDIA_ARCHIVE}" + +LINUXPKG=${PKGEXTRANAME}.${ARCH} + +LINUXKLOCALVER=$(beeversion --format "%v%-e.mx64.%r" "${LINUXPKG}") + +# '4.4.mx64.75' to '4.4.0.mx64.75' +# '4.8-rc2.mx64.95' to '4.8.0-rc2.mx64.95' +if [[ $LINUXKLOCALVER =~ ^([0-9]+\.[0-9]+)(-?.*)(\.mx64.*) ]]; then + LINUXKLOCALVER="${BASH_REMATCH[1]}${BASH_REMATCH[2]}${BASH_REMATCH[3]}" +fi + + +build_in_sourcedir +sourcesubdir_append kernel + +: ${BEE_TMP_TMPDIR:=/tmp} + +mee_extract() { + LINUXBUILDARCHIVE="${BEE_BUILDARCHIVEDIR}/${LINUXPKG}.beebuild.tar.bz2" + + print_info "extracting nvidia archive .." + + start_cmd rmdir ${S} + start_cmd sh ${F}/${NVIDIA_ARCHIVE} -x --target ${S} + + if [ -d "/usr/src/linux/${LINUXPKG}/source" ] ; then + LINUXSRCDIR="/usr/src/linux/${LINUXPKG}/source" + elif [ -d "${BEE_TMP_TMPDIR}/${LINUXPKG}/source" ] ; then + LINUXSRCDIR="${BEE_TMP_TMPDIR}/${LINUXPKG}/source" + else + print_info "extracting linux build ${LINUXPKG} .." + start_cmd gtar -xf "${LINUXBUILDARCHIVE}" -C ${BEE_TMP_TMPDIR} + LINUXSRCDIR="${BEE_TMP_TMPDIR}/${LINUXPKG}/source" + fi + + print_info "using kernel sources from ${LINUXSRCDIR} .." +} + +mee_build_pre() { + ln -s ${LINUXSRCDIR}/include ${S}/include +} + +mee_build() { + start_cmd make SYSSRC=${LINUXSRCDIR} module +} + +mee_install() { + mkdir -pv ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${PKGVERSION} + + cp -v *.ko ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${PKGVERSION}/ + + ln -s ${PKGVERSION} ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${mxnvversion} +} From 4bdff6d65ee6f57282193777b6697b010c035bf5 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 12 Dec 2016 10:42:07 +0100 Subject: [PATCH 3/3] nvidia_linux: Build 367.57 for Linux 4.8.14 --- nvidia_linux-4.8.14-128-367.57-0.bee | 88 ++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100755 nvidia_linux-4.8.14-128-367.57-0.bee diff --git a/nvidia_linux-4.8.14-128-367.57-0.bee b/nvidia_linux-4.8.14-128-367.57-0.bee new file mode 100755 index 000000000..6bd106763 --- /dev/null +++ b/nvidia_linux-4.8.14-128-367.57-0.bee @@ -0,0 +1,88 @@ +#!/bin/env beesh + +# calculate package extra versions and legacy level +# - use extraversions to define nvidia extraversion and/or legacy level +# - legacy level should be the last part of extraversion +# - legacy level 2 to 5 will be calculated from version number.. + +mxnvversion=${PKGEXTRAVERSION##*_} +: ${mxnvversion=current} + +nvextraversion="${PKGEXTRAVERSION_DASH}" + +if [ "${mxnvversion:0:6}" = "legacy" -o "${mxnvversion}" = "current" ] ; then + nvextraversion="${nvextraversion%_*}" + nvextraversion="${nvextraversion#-${mxnvversion}}" +else + if [ "${PKGVERSION:0:4}" = "340." ] ; then + mxnvversion="legacy5" + elif [ "${PKGVERSION:0:4}" = "304." ] ; then + mxnvversion="legacy4" + elif [ "${PKGVERSION:0:7}" = "173.14." ] ; then + mxnvversion="legacy3" + elif [ "${PKGVERSION:0:6}" = "96.43." ] ; then + mxnvversion="legacy2" + else + mxnvversion="current" + fi +fi + +print_info "calculated mxnvversion = '${mxnvversion}'" +print_info "calculated nvextraversion = '${nvextraversion}'" + +NVIDIA_ARCHIVE="NVIDIA-Linux-x86_64-${PKGVERSION}${nvextraversion}.run" + +SRCURL[0]="ftp://download.nvidia.com/XFree86/Linux-x86_64/${PKGVERSION}/${NVIDIA_ARCHIVE}" + +LINUXPKG=${PKGEXTRANAME}.${ARCH} + +LINUXKLOCALVER=$(beeversion --format "%v%-e.mx64.%r" "${LINUXPKG}") + +# '4.4.mx64.75' to '4.4.0.mx64.75' +# '4.8-rc2.mx64.95' to '4.8.0-rc2.mx64.95' +if [[ $LINUXKLOCALVER =~ ^([0-9]+\.[0-9]+)(-?.*)(\.mx64.*) ]]; then + LINUXKLOCALVER="${BASH_REMATCH[1]}${BASH_REMATCH[2]}${BASH_REMATCH[3]}" +fi + + +build_in_sourcedir +sourcesubdir_append kernel + +: ${BEE_TMP_TMPDIR:=/tmp} + +mee_extract() { + LINUXBUILDARCHIVE="${BEE_BUILDARCHIVEDIR}/${LINUXPKG}.beebuild.tar.bz2" + + print_info "extracting nvidia archive .." + + start_cmd rmdir ${S} + start_cmd sh ${F}/${NVIDIA_ARCHIVE} -x --target ${S} + + if [ -d "/usr/src/linux/${LINUXPKG}/source" ] ; then + LINUXSRCDIR="/usr/src/linux/${LINUXPKG}/source" + elif [ -d "${BEE_TMP_TMPDIR}/${LINUXPKG}/source" ] ; then + LINUXSRCDIR="${BEE_TMP_TMPDIR}/${LINUXPKG}/source" + else + print_info "extracting linux build ${LINUXPKG} .." + start_cmd gtar -xf "${LINUXBUILDARCHIVE}" -C ${BEE_TMP_TMPDIR} + LINUXSRCDIR="${BEE_TMP_TMPDIR}/${LINUXPKG}/source" + fi + + print_info "using kernel sources from ${LINUXSRCDIR} .." +} + +mee_build_pre() { + ln -s ${LINUXSRCDIR}/include ${S}/include +} + +mee_build() { + start_cmd make SYSSRC=${LINUXSRCDIR} module +} + +mee_install() { + mkdir -pv ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${PKGVERSION} + + cp -v *.ko ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${PKGVERSION}/ + + ln -s ${PKGVERSION} ${D}${DATAROOTDIR}/nvidia/kernel/${LINUXKLOCALVER}/${mxnvversion} +}