Date: Saturday, February 17, 2018 @ 16:49:59 Author: heftig Revision: 317222
4.15.4-1 Added: linux/trunk/0003-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch (from rev 317076, linux/trunk/0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch) Modified: linux/trunk/0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch linux/trunk/0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch linux/trunk/PKGBUILD Deleted: linux/trunk/0003-ssb-Do-not-disable-PCI-host-on-non-Mips.patch linux/trunk/0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch -----------------------------------------------------------------+ 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch | 6 0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch | 12 - 0003-ssb-Do-not-disable-PCI-host-on-non-Mips.patch | 37 ---- 0003-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch | 80 ++++++++++ 0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch | 80 ---------- PKGBUILD | 33 +--- 6 files changed, 104 insertions(+), 144 deletions(-) Modified: 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch =================================================================== --- 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch 2018-02-17 16:44:48 UTC (rev 317221) +++ 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch 2018-02-17 16:49:59 UTC (rev 317222) @@ -1,8 +1,8 @@ -From 44c5097b2711429f0d49d138681f67157982e729 Mon Sep 17 00:00:00 2001 -Message-Id: <44c5097b2711429f0d49d138681f67157982e729.1518653356.git.jan.steff...@gmail.com> +From 05a43fb8b36cdaf6a3580f46cab334f2c2796544 Mon Sep 17 00:00:00 2001 +Message-Id: <05a43fb8b36cdaf6a3580f46cab334f2c2796544.1518828081.git.jan.steff...@gmail.com> From: Serge Hallyn <serge.hal...@canonical.com> Date: Fri, 31 May 2013 19:12:12 +0100 -Subject: [PATCH 1/4] add sysctl to disallow unprivileged CLONE_NEWUSER by +Subject: [PATCH 1/3] add sysctl to disallow unprivileged CLONE_NEWUSER by default Signed-off-by: Serge Hallyn <serge.hal...@ubuntu.com> Modified: 0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch =================================================================== --- 0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch 2018-02-17 16:44:48 UTC (rev 317221) +++ 0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch 2018-02-17 16:49:59 UTC (rev 317222) @@ -1,10 +1,10 @@ -From 7596bfa5ccb3e3a72443871a4c6d0c4f230c1cb5 Mon Sep 17 00:00:00 2001 -Message-Id: <7596bfa5ccb3e3a72443871a4c6d0c4f230c1cb5.1518653356.git.jan.steff...@gmail.com> -In-Reply-To: <44c5097b2711429f0d49d138681f67157982e729.1518653356.git.jan.steff...@gmail.com> -References: <44c5097b2711429f0d49d138681f67157982e729.1518653356.git.jan.steff...@gmail.com> +From 9ae12d036a480aa5352118c982ba76f2fb1640a3 Mon Sep 17 00:00:00 2001 +Message-Id: <9ae12d036a480aa5352118c982ba76f2fb1640a3.1518828081.git.jan.steff...@gmail.com> +In-Reply-To: <05a43fb8b36cdaf6a3580f46cab334f2c2796544.1518828081.git.jan.steff...@gmail.com> +References: <05a43fb8b36cdaf6a3580f46cab334f2c2796544.1518828081.git.jan.steff...@gmail.com> From: Jim Bride <jim.br...@linux.intel.com> Date: Mon, 6 Nov 2017 13:38:57 -0800 -Subject: [PATCH 2/4] drm/i915/edp: Only use the alternate fixed mode if it's +Subject: [PATCH 2/3] drm/i915/edp: Only use the alternate fixed mode if it's asked for In commit dc911f5bd8aa ("drm/i915/edp: Allow alternate fixed mode for @@ -24,7 +24,7 @@ 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c -index 158438bb0389..69b16df868ea 100644 +index add4b2434aa3..14a8bef9fdfe 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c @@ -1616,7 +1616,8 @@ static bool intel_edp_compare_alt_mode(struct drm_display_mode *m1, Deleted: 0003-ssb-Do-not-disable-PCI-host-on-non-Mips.patch =================================================================== --- 0003-ssb-Do-not-disable-PCI-host-on-non-Mips.patch 2018-02-17 16:44:48 UTC (rev 317221) +++ 0003-ssb-Do-not-disable-PCI-host-on-non-Mips.patch 2018-02-17 16:49:59 UTC (rev 317222) @@ -1,37 +0,0 @@ -From 509ca946c21ff2ae50c6404d191c87573a53a621 Mon Sep 17 00:00:00 2001 -Message-Id: <509ca946c21ff2ae50c6404d191c87573a53a621.1518653356.git.jan.steff...@gmail.com> -In-Reply-To: <44c5097b2711429f0d49d138681f67157982e729.1518653356.git.jan.steff...@gmail.com> -References: <44c5097b2711429f0d49d138681f67157982e729.1518653356.git.jan.steff...@gmail.com> -From: Sven Joachim <svenj...@gmx.de> -Date: Fri, 26 Jan 2018 10:38:01 +0100 -Subject: [PATCH 3/4] ssb: Do not disable PCI host on non-Mips - -After upgrading an old laptop to 4.15-rc9, I found that the eth0 and -wlan0 interfaces had disappeared. It turns out that the b43 and b44 -drivers require SSB_PCIHOST_POSSIBLE which depends on -PCI_DRIVERS_LEGACY, a config option that only exists on Mips. - -Fixes: 58eae1416b80 ("ssb: Disable PCI host for PCI_DRIVERS_GENERIC") -Cc: sta...@vger.org -Signed-off-by: Sven Joachim <svenj...@gmx.de> -Reviewed-by: James Hogan <jho...@kernel.org> ---- - drivers/ssb/Kconfig | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig -index 71c73766ee22..65af12c3bdb2 100644 ---- a/drivers/ssb/Kconfig -+++ b/drivers/ssb/Kconfig -@@ -32,7 +32,7 @@ config SSB_BLOCKIO - - config SSB_PCIHOST_POSSIBLE - bool -- depends on SSB && (PCI = y || PCI = SSB) && PCI_DRIVERS_LEGACY -+ depends on SSB && (PCI = y || PCI = SSB) && (PCI_DRIVERS_LEGACY || !MIPS) - default y - - config SSB_PCIHOST --- -2.16.1 - Copied: linux/trunk/0003-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch (from rev 317076, linux/trunk/0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch) =================================================================== --- 0003-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch (rev 0) +++ 0003-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch 2018-02-17 16:49:59 UTC (rev 317222) @@ -0,0 +1,80 @@ +From cd0c80aa02dbfe649c743fa98fcc0d9f427e0827 Mon Sep 17 00:00:00 2001 +Message-Id: <cd0c80aa02dbfe649c743fa98fcc0d9f427e0827.1518828081.git.jan.steff...@gmail.com> +In-Reply-To: <05a43fb8b36cdaf6a3580f46cab334f2c2796544.1518828081.git.jan.steff...@gmail.com> +References: <05a43fb8b36cdaf6a3580f46cab334f2c2796544.1518828081.git.jan.steff...@gmail.com> +From: Juergen Gross <jgr...@suse.com> +Date: Thu, 1 Feb 2018 13:40:19 +0100 +Subject: [PATCH 3/3] x86/xen: init %gs very early to avoid page faults with + stack protector + +When running as Xen pv guest %gs is initialized some time after +C code is started. Depending on stack protector usage this might be +too late, resulting in page faults. + +So setup %gs and MSR_GS_BASE in assembly code already. + +Cc: sta...@vger.kernel.org +Signed-off-by: Juergen Gross <jgr...@suse.com> +Reviewed-by: Boris Ostrovsky <boris.ostrov...@oracle.com> +Tested-by: Chris Patterson <cjp...@gmail.com> +Signed-off-by: Juergen Gross <jgr...@suse.com> +--- + arch/x86/xen/xen-head.S | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S +index 497cc55a0c16..96f26e026783 100644 +--- a/arch/x86/xen/xen-head.S ++++ b/arch/x86/xen/xen-head.S +@@ -9,32 +9,48 @@ + + #include <asm/boot.h> + #include <asm/asm.h> ++#include <asm/msr.h> + #include <asm/page_types.h> ++#include <asm/percpu.h> + #include <asm/unwind_hints.h> + + #include <xen/interface/elfnote.h> + #include <xen/interface/features.h> + #include <xen/interface/xen.h> + #include <xen/interface/xen-mca.h> + #include <asm/xen/interface.h> + + #ifdef CONFIG_XEN_PV + __INIT + ENTRY(startup_xen) + UNWIND_HINT_EMPTY + cld + + /* Clear .bss */ + xor %eax,%eax + mov $__bss_start, %_ASM_DI + mov $__bss_stop, %_ASM_CX + sub %_ASM_DI, %_ASM_CX + shr $__ASM_SEL(2, 3), %_ASM_CX + rep __ASM_SIZE(stos) + + mov %_ASM_SI, xen_start_info + mov $init_thread_union+THREAD_SIZE, %_ASM_SP + ++#ifdef CONFIG_X86_64 ++ /* Set up %gs. ++ * ++ * The base of %gs always points to the bottom of the irqstack ++ * union. If the stack protector canary is enabled, it is ++ * located at %gs:40. Note that, on SMP, the boot cpu uses ++ * init data section till per cpu areas are set up. ++ */ ++ movl $MSR_GS_BASE,%ecx ++ movq $INIT_PER_CPU_VAR(irq_stack_union),%rax ++ cdq ++ wrmsr ++#endif ++ + jmp xen_start_kernel + END(startup_xen) + __FINIT +-- +2.16.1 + Deleted: 0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch =================================================================== --- 0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch 2018-02-17 16:44:48 UTC (rev 317221) +++ 0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch 2018-02-17 16:49:59 UTC (rev 317222) @@ -1,80 +0,0 @@ -From 782e9c805d19610d5821d1f75a3854ac587e2dac Mon Sep 17 00:00:00 2001 -Message-Id: <782e9c805d19610d5821d1f75a3854ac587e2dac.1518653356.git.jan.steff...@gmail.com> -In-Reply-To: <44c5097b2711429f0d49d138681f67157982e729.1518653356.git.jan.steff...@gmail.com> -References: <44c5097b2711429f0d49d138681f67157982e729.1518653356.git.jan.steff...@gmail.com> -From: Juergen Gross <jgr...@suse.com> -Date: Thu, 1 Feb 2018 13:40:19 +0100 -Subject: [PATCH 4/4] x86/xen: init %gs very early to avoid page faults with - stack protector - -When running as Xen pv guest %gs is initialized some time after -C code is started. Depending on stack protector usage this might be -too late, resulting in page faults. - -So setup %gs and MSR_GS_BASE in assembly code already. - -Cc: sta...@vger.kernel.org -Signed-off-by: Juergen Gross <jgr...@suse.com> -Reviewed-by: Boris Ostrovsky <boris.ostrov...@oracle.com> -Tested-by: Chris Patterson <cjp...@gmail.com> -Signed-off-by: Juergen Gross <jgr...@suse.com> ---- - arch/x86/xen/xen-head.S | 16 ++++++++++++++++ - 1 file changed, 16 insertions(+) - -diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S -index 497cc55a0c16..96f26e026783 100644 ---- a/arch/x86/xen/xen-head.S -+++ b/arch/x86/xen/xen-head.S -@@ -9,32 +9,48 @@ - - #include <asm/boot.h> - #include <asm/asm.h> -+#include <asm/msr.h> - #include <asm/page_types.h> -+#include <asm/percpu.h> - #include <asm/unwind_hints.h> - - #include <xen/interface/elfnote.h> - #include <xen/interface/features.h> - #include <xen/interface/xen.h> - #include <xen/interface/xen-mca.h> - #include <asm/xen/interface.h> - - #ifdef CONFIG_XEN_PV - __INIT - ENTRY(startup_xen) - UNWIND_HINT_EMPTY - cld - - /* Clear .bss */ - xor %eax,%eax - mov $__bss_start, %_ASM_DI - mov $__bss_stop, %_ASM_CX - sub %_ASM_DI, %_ASM_CX - shr $__ASM_SEL(2, 3), %_ASM_CX - rep __ASM_SIZE(stos) - - mov %_ASM_SI, xen_start_info - mov $init_thread_union+THREAD_SIZE, %_ASM_SP - -+#ifdef CONFIG_X86_64 -+ /* Set up %gs. -+ * -+ * The base of %gs always points to the bottom of the irqstack -+ * union. If the stack protector canary is enabled, it is -+ * located at %gs:40. Note that, on SMP, the boot cpu uses -+ * init data section till per cpu areas are set up. -+ */ -+ movl $MSR_GS_BASE,%ecx -+ movq $INIT_PER_CPU_VAR(irq_stack_union),%rax -+ cdq -+ wrmsr -+#endif -+ - jmp xen_start_kernel - END(startup_xen) - __FINIT --- -2.16.1 - Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-02-17 16:44:48 UTC (rev 317221) +++ PKGBUILD 2018-02-17 16:49:59 UTC (rev 317222) @@ -5,8 +5,8 @@ pkgbase=linux # Build stock -ARCH kernel #pkgbase=linux-custom # Build kernel with a different name _srcname=linux-4.15 -pkgver=4.15.3 -pkgrel=2 +pkgver=4.15.4 +pkgrel=1 arch=('x86_64') url="https://www.kernel.org/" license=('GPL2') @@ -21,8 +21,7 @@ linux.preset # standard config files for mkinitcpio ramdisk 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch 0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch - 0003-ssb-Do-not-disable-PCI-host-on-non-Mips.patch - 0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch + 0003-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch ) validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds @@ -30,16 +29,15 @@ ) sha256sums=('5a26478906d5005f4f809402e981518d2b8844949199f60c4b6e1f986ca2a769' 'SKIP' - '6dd42389603bc6c83d2e6db1d736303e41d26cef479cad926b87711f261c9c35' + '5f8344fcc6b15be5f53001bb18df342bf5877563239f03271c236e3a40db89e8' 'SKIP' '617d1a2b0160fc72098524a51501531556050cab0e466c9dbae5d60a78991bd2' 'ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21' '75f99f5239e03238f88d1a834c50043ec32b1dc568f2cc291b07d04718483919' 'ad6344badc91ad0630caacde83f7f9b97276f80d26a20619a87952be65492c65' - '95bda0b206b917ee907375bb0015b8f04f668bfea74706ce614442326a6be442' - '2a9adeea2d45513ee3ef0af9fb91c254f14500195e801581b55abcf4ff228eb0' - '990653b33a736b3941f03d8ca49795109f16507afa34b57dbce3c8e2d2fb26ca' - '13bc8392b26d1ce0182060fba0f37f74dd7cdc6fff2fdea3240fc4e755621277') + 'c7951a3dfa6dcfd6f7c56d8d5c7c89cceb0e612ce3e6134d3fe23d1202b69863' + 'b1485882a9d26fe49b9fb2530259c2c39e03a3346ff63edcbc746f47ef693676' + '54380eafa1dfb42f7860a5eee9f521c14aa5fd2c9f5bfaa6e0537d75800225b7') _kernelname=${pkgbase#linux} : ${_kernelname:=-ARCH} @@ -59,11 +57,8 @@ # https://bugs.archlinux.org/task/56711 patch -Np1 -i ../0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch - # https://bugs.archlinux.org/task/57327 - patch -Np1 -i ../0003-ssb-Do-not-disable-PCI-host-on-non-Mips.patch - # https://bugs.archlinux.org/task/57500 - patch -Np1 -i ../0004-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch + patch -Np1 -i ../0003-x86-xen-init-gs-very-early-to-avoid-page-faults-with.patch cat ../config - >.config <<END CONFIG_LOCALVERSION="${_kernelname}" @@ -70,8 +65,10 @@ CONFIG_LOCALVERSION_AUTO=n END - # set extraversion to pkgrel - sed -i "/^EXTRAVERSION =/s/=.*/= -${pkgrel}/" Makefile + # set extraversion to pkgrel and empty localversion + sed -e "/^EXTRAVERSION =/s/=.*/= -${pkgrel}/" \ + -e "/^EXTRAVERSION =/aLOCALVERSION =" \ + -i Makefile # don't run depmod on 'make install'. We'll do this ourselves in packaging sed -i '2iexit 0' scripts/depmod.sh @@ -94,7 +91,7 @@ build() { cd ${_srcname} - make ${MAKEFLAGS} LOCALVERSION= bzImage modules + make bzImage modules } _package() { @@ -108,12 +105,12 @@ cd ${_srcname} # get kernel version - _kernver="$(make LOCALVERSION= kernelrelease)" + _kernver="$(make kernelrelease)" _basekernel=${_kernver%%-*} _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{boot,usr/lib/modules} - make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}/usr" modules_install + make INSTALL_MOD_PATH="${pkgdir}/usr" modules_install cp arch/x86/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}" # make room for external modules