Hello community, here is the log from the commit of package kernel-source for openSUSE:Factory checked in at 2016-09-28 11:29:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kernel-source (Old) and /work/SRC/openSUSE:Factory/.kernel-source.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kernel-source" Changes: -------- New Changes file: --- /dev/null 2016-09-15 12:42:18.240042505 +0200 +++ /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-64kb.changes 2016-09-28 11:29:10.000000000 +0200 @@ -0,0 +1,42730 @@ +------------------------------------------------------------------- +Mon Sep 26 09:42:49 CEST 2016 - ag...@suse.de + +- rpm/package-descriptions: Add 64kb kernel flavor description +- commit 8462c50 + +------------------------------------------------------------------- +Sun Sep 25 12:39:49 CEST 2016 - b...@suse.de + +- scsi: arcmsr: Buffer overflow in arcmsr_iop_message_xfer() + (bsc#999932 CVE-2016-7425). +- commit 135aa22 + +------------------------------------------------------------------- +Sat Sep 24 13:41:43 CEST 2016 - jsl...@suse.cz + +- Linux 4.7.5 (CVE-2016-6828 bnc#994066 bsc#993996 bsc#994296). +- Delete + patches.fixes/drm-i915-Ignore-OpRegion-panel-type-except-on-select. +- Delete + patches.fixes/mm-oom-prevent-premature-OOM-killer-invocation-for-h.patch. +- Delete + patches.fixes/tcp-fix-use-after-free-in-tcp_xmit_retransmit_queue.patch. +- Delete patches.rpmify/i915-fix-build-error-with-werror. +- commit c7aed11 + +------------------------------------------------------------------- +Wed Sep 21 20:54:36 CEST 2016 - ag...@suse.de + +- arm64: disable hvc_dcc +- commit 89df77c + +------------------------------------------------------------------- +Wed Sep 21 20:02:39 CEST 2016 - ag...@suse.de + +- arm64: Relocate screen_info.lfb_base on PCI BAR allocation (bsc#975159). +- commit c3f6949 + +------------------------------------------------------------------- +Wed Sep 21 17:48:39 CEST 2016 - ag...@suse.de + +- arm64: Refuse to install 4k kernel on 64k system +- commit 5565330 + +------------------------------------------------------------------- +Wed Sep 21 16:15:46 CEST 2016 - je...@suse.com + +- btrfs: ensure that file descriptor used with subvol ioctls is + a dir (bsc#999600). +- commit cf44e6a + +------------------------------------------------------------------- +Tue Sep 20 18:29:38 CEST 2016 - ag...@suse.de + +- arm64: Add 64kb flavor for 64kb page size +- commit 4f006b4 + +------------------------------------------------------------------- +Tue Sep 20 18:25:14 CEST 2016 - ag...@suse.de + +- Switch arm64 default config to 4k +- commit 5244f77 + +------------------------------------------------------------------- +Tue Sep 20 12:29:38 CEST 2016 - ti...@suse.de + +- Refresh + patches.fixes/autofs-use-dentry-flags-to-block-walks-during-expire. + Update git commit tag to sync with upstream. +- commit 5c2468b + +------------------------------------------------------------------- +Thu Sep 15 09:32:40 CEST 2016 - jsl...@suse.cz + +- Linux 4.7.4. +- commit b93c795 + +------------------------------------------------------------------- +Wed Sep 14 15:54:36 CEST 2016 - je...@suse.com + +- config: enable RANDOMIZE_BASE and friends (bsc#998554). +- commit 4de94c3 + +------------------------------------------------------------------- +Wed Sep 14 13:45:16 CEST 2016 - ti...@suse.de + +- drm/i915: Ignore OpRegion panel type except on select machines (bsc#993996). +- commit 6a5bbb1 + +------------------------------------------------------------------- +Mon Sep 12 21:25:36 CEST 2016 - mho...@suse.cz + +- mm, oom: prevent premature OOM killer invocation for high + order request (bnc#994066). +- commit d2c8eb9 + +------------------------------------------------------------------- +Thu Sep 8 15:04:24 CEST 2016 - ti...@suse.de + +- Refresh patches.fixes/autofs-use-dentry-flags-to-block-walks-during-expire + Fix schedule_timeout() call with uninterruptible one (bsc#997639) +- commit 7ad9c1d + +------------------------------------------------------------------- +Wed Sep 7 17:41:12 CEST 2016 - ti...@suse.de + +- autofs - use dentry flags to block walks during expire + (bsc#997639). +- commit 268a807 + +------------------------------------------------------------------- +Wed Sep 7 09:38:58 CEST 2016 - jsl...@suse.cz + +- Linux 4.7.3 (CVE-2016-6480 bsc#991608). +- Delete + patches.fixes/aacraid-check-size-values-after-double-fetch-from-user.patch. +- commit 2ecc7fe + +------------------------------------------------------------------- +Mon Aug 29 22:56:22 CEST 2016 - ti...@suse.de + +- drm/i915: Fix S4 resume breakage + (bsc#984629,bsc#984632,bsc#993472). +- drm/i915: Add distinct stubs for PM hibernation phases + (bsc#984632,bsc#993472). +- x86 / hibernate: Use hlt_play_dead() when resuming from + hibernation (bsc#984629,bsc#993472). +- commit 1d73b85 + +------------------------------------------------------------------- +Tue Aug 23 10:09:14 CEST 2016 - mkube...@suse.cz + +- tcp: fix use after free in tcp_xmit_retransmit_queue() + (CVE-2016-6828 bsc#994296). +- commit 73d7d3e + +------------------------------------------------------------------- +Sun Aug 21 10:59:11 CEST 2016 - jsl...@suse.cz + +- Linux 4.7.2. +- Refresh patches.fixes/block-copy-bi_vcnt-in-_bio_clone_fast. +- commit 34ba8d6 + +------------------------------------------------------------------- +Sat Aug 20 15:15:08 CEST 2016 - mma...@suse.cz + +- rpm/old-flavors: Obsolte kernel-compute by kernel-rt (fate#320686) +- commit 964f3e2 + +------------------------------------------------------------------- +Tue Aug 16 16:32:45 CEST 2016 - jsl...@suse.cz + +- Linux 4.7.1 (CVE-2016-6516 bsc#991604). +- Delete + patches.fixes/vfs-ioctl-prevent-double-fetch-in-dedupe-ioctl. +- commit 61bf3f1 + +------------------------------------------------------------------- +Tue Aug 16 16:11:36 CEST 2016 - mma...@suse.com + +- rpm/kernel-source.spec.in: Unroll a loop with only a single iteration +- commit 601c09e + +------------------------------------------------------------------- +Tue Aug 9 14:49:30 CEST 2016 - jthumsh...@suse.de + +- aacraid: Check size values after double-fetch from user + (CVE-2016-6480 bsc#991608). +- Delete + patches.drivers/0001-aacraid-prevent-out-of-bounds-access-due-to-changing.patch. +- commit 39024c1 + +------------------------------------------------------------------- +Fri Aug 5 10:50:53 CEST 2016 - jsl...@suse.cz + +- rpm/constraints.in: set memory minimum for binaries + Binary packages are sometimes built on machines with 1G. For example + one arm build ran in a VM with -smp 1 -m 1024. And it caused OOMs. + So set the minimal memory to 2G for all archs. +- commit b3acaa2 + +------------------------------------------------------------------- +Thu Aug 4 13:26:54 CEST 2016 - jthumsh...@suse.de + +- aacraid: prevent out-of-bounds access due to changing fip + header sizes (bsc#991608, CVE-2016-6480). +- commit 162f969 + +------------------------------------------------------------------- +Thu Aug 4 01:48:42 CEST 2016 - ne...@suse.com + +- Revert "SUNRPC: xs_sock_mark_closed() does not need to trigger + socket autoclose" (bsc#990356). +- commit fd538ca + +------------------------------------------------------------------- +Wed Aug 3 14:23:00 CEST 2016 - ti...@suse.de ++++ 42533 more lines (skipped) ++++ between /dev/null ++++ and /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-64kb.changes --- /work/SRC/openSUSE:Factory/kernel-source/kernel-debug.changes 2016-09-23 11:28:15.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-debug.changes 2016-09-28 11:29:10.000000000 +0200 @@ -1,0 +2,63 @@ +Mon Sep 26 09:42:49 CEST 2016 - ag...@suse.de + +- rpm/package-descriptions: Add 64kb kernel flavor description +- commit 8462c50 + +------------------------------------------------------------------- +Sun Sep 25 12:39:49 CEST 2016 - b...@suse.de + +- scsi: arcmsr: Buffer overflow in arcmsr_iop_message_xfer() + (bsc#999932 CVE-2016-7425). +- commit 135aa22 + +------------------------------------------------------------------- +Sat Sep 24 13:41:43 CEST 2016 - jsl...@suse.cz + +- Linux 4.7.5 (CVE-2016-6828 bnc#994066 bsc#993996 bsc#994296). +- Delete + patches.fixes/drm-i915-Ignore-OpRegion-panel-type-except-on-select. +- Delete + patches.fixes/mm-oom-prevent-premature-OOM-killer-invocation-for-h.patch. +- Delete + patches.fixes/tcp-fix-use-after-free-in-tcp_xmit_retransmit_queue.patch. +- Delete patches.rpmify/i915-fix-build-error-with-werror. +- commit c7aed11 + +------------------------------------------------------------------- +Wed Sep 21 20:54:36 CEST 2016 - ag...@suse.de + +- arm64: disable hvc_dcc +- commit 89df77c + +------------------------------------------------------------------- +Wed Sep 21 20:02:39 CEST 2016 - ag...@suse.de + +- arm64: Relocate screen_info.lfb_base on PCI BAR allocation (bsc#975159). +- commit c3f6949 + +------------------------------------------------------------------- +Wed Sep 21 17:48:39 CEST 2016 - ag...@suse.de + +- arm64: Refuse to install 4k kernel on 64k system +- commit 5565330 + +------------------------------------------------------------------- +Wed Sep 21 16:15:46 CEST 2016 - je...@suse.com + +- btrfs: ensure that file descriptor used with subvol ioctls is + a dir (bsc#999600). +- commit cf44e6a + +------------------------------------------------------------------- +Tue Sep 20 18:29:38 CEST 2016 - ag...@suse.de + +- arm64: Add 64kb flavor for 64kb page size +- commit 4f006b4 + +------------------------------------------------------------------- +Tue Sep 20 18:25:14 CEST 2016 - ag...@suse.de + +- Switch arm64 default config to 4k +- commit 5244f77 + +------------------------------------------------------------------- kernel-default.changes: same change kernel-docs.changes: same change kernel-lpae.changes: same change kernel-obs-build.changes: same change kernel-obs-qa.changes: same change kernel-pae.changes: same change kernel-source.changes: same change kernel-syms.changes: same change kernel-vanilla.changes: same change New: ---- kernel-64kb.changes kernel-64kb.spec ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kernel-64kb.spec ++++++ ++++ 1145 lines (skipped) ++++++ kernel-debug.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:16.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:16.000000000 +0200 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.7 -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %define vanilla_only 0 @@ -61,9 +61,9 @@ Summary: A Debug Version of the Kernel License: GPL-2.0 Group: System/Kernel -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif kernel-default.spec: same change ++++++ kernel-docs.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:16.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:16.000000000 +0200 @@ -16,7 +16,7 @@ # -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -27,9 +27,9 @@ Summary: Kernel Documentation (man pages) License: GPL-2.0 Group: Documentation/Man -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif ++++++ kernel-lpae.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:16.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:16.000000000 +0200 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.7 -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %define vanilla_only 0 @@ -61,9 +61,9 @@ Summary: Kernel for LPAE enabled systems License: GPL-2.0 Group: System/Kernel -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif ++++++ kernel-obs-build.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -19,7 +19,7 @@ #!BuildIgnore: post-build-checks -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -51,9 +51,9 @@ Summary: package kernel and initrd for OBS VM builds License: GPL-2.0 Group: SLES -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif ++++++ kernel-obs-qa.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -17,7 +17,7 @@ # needsrootforbuild -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -36,9 +36,9 @@ Summary: Basic QA tests for the kernel License: GPL-2.0 Group: SLES -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif ++++++ kernel-pae.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.7 -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %define vanilla_only 0 @@ -61,9 +61,9 @@ Summary: Kernel with PAE Support License: GPL-2.0 Group: System/Kernel -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif ++++++ kernel-source.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -18,7 +18,7 @@ %define srcversion 4.7 -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %define vanilla_only 0 @@ -30,9 +30,9 @@ Summary: The Linux Kernel Sources License: GPL-2.0 Group: Development/Sources -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif ++++++ kernel-syms.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -24,10 +24,10 @@ Summary: Kernel Symbol Versions (modversions) License: GPL-2.0 Group: Development/Sources -Version: 4.7.4 +Version: 4.7.5 %if %using_buildservice %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif @@ -38,6 +38,9 @@ Url: http://www.kernel.org/ AutoReqProv: off BuildRequires: coreutils +%ifarch aarch64 +Requires: kernel-64kb-devel = %version-%source_rel +%endif %ifarch aarch64 armv6hl armv7hl %ix86 ppc64 ppc64le s390x x86_64 Requires: kernel-default-devel = %version-%source_rel %endif ++++++ kernel-vanilla.spec ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.7 -%define patchversion 4.7.4 +%define patchversion 4.7.5 %define variant %{nil} %define vanilla_only 0 @@ -61,9 +61,9 @@ Summary: The Standard Kernel - without any SUSE patches License: GPL-2.0 Group: System/Kernel -Version: 4.7.4 +Version: 4.7.5 %if 0%{?is_kotd} -Release: <RELEASE>.g4de94c3 +Release: <RELEASE>.g02c4d35 %else Release: 0 %endif ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -2,6 +2,7 @@ <!-- Default 20GB for binary packages --> <overwrite> <conditions> +<package>kernel-64kb</package> <package>kernel-debug</package> <package>kernel-default</package> <package>kernel-lpae</package> @@ -35,6 +36,7 @@ <overwrite> <conditions> <arch>s390x</arch> +<package>kernel-64kb</package> <package>kernel-debug</package> <package>kernel-default</package> <package>kernel-lpae</package> @@ -53,6 +55,7 @@ <conditions> <arch>i586</arch> <arch>x86_64</arch> +<package>kernel-64kb</package> <package>kernel-debug</package> <package>kernel-default</package> <package>kernel-lpae</package> @@ -70,6 +73,7 @@ <arch>ppc</arch> <arch>ppc64</arch> <arch>ppc64le</arch> +<package>kernel-64kb</package> <package>kernel-debug</package> <package>kernel-default</package> <package>kernel-lpae</package> ++++++ config.conf ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -32,6 +32,7 @@ +armv7hl armv7hl/vanilla +armv7hl armv7hl/lpae +arm64 arm64/default ++arm64 arm64/64kb +arm64 arm64/vanilla +s390x s390x/default ++++++ config.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/arm64/64kb new/config/arm64/64kb --- old/config/arm64/64kb 1970-01-01 01:00:00.000000000 +0100 +++ new/config/arm64/64kb 2016-09-21 20:54:36.000000000 +0200 @@ -0,0 +1,16 @@ +CONFIG_ARCH_MMAP_RND_BITS_MAX=29 +CONFIG_ARCH_MMAP_RND_BITS_MIN=14 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=7 +# CONFIG_ARM64_4K_PAGES is not set +CONFIG_ARM64_64K_PAGES=y +CONFIG_ARM64_CONT_SHIFT=5 +CONFIG_ARM64_PAGE_SHIFT=16 +# CONFIG_ARM64_VA_BITS_42 is not set +CONFIG_FORCE_MAX_ZONEORDER=14 +CONFIG_LOCALVERSION="-64kb" +CONFIG_PGTABLE_LEVELS=3 +CONFIG_MODULES=y +# CONFIG_MODULE_SIG is not set +CONFIG_SPLIT_PACKAGE=y +# CONFIG_SUSE_KERNEL_SUPPORTED is not set +CONFIG_EFI_STUB=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/arm64/default new/config/arm64/default --- old/config/arm64/default 2016-09-20 16:55:16.000000000 +0200 +++ new/config/arm64/default 2016-09-21 20:54:36.000000000 +0200 @@ -1,16 +1,16 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 4.7.0 Kernel Configuration +# Linux/arm64 4.7.4 Kernel Configuration # CONFIG_ARM64=y CONFIG_64BIT=y CONFIG_ARCH_PHYS_ADDR_T_64BIT=y CONFIG_MMU=y -CONFIG_ARM64_PAGE_SHIFT=16 -CONFIG_ARM64_CONT_SHIFT=5 -CONFIG_ARCH_MMAP_RND_BITS_MIN=14 -CONFIG_ARCH_MMAP_RND_BITS_MAX=27 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=7 +CONFIG_ARM64_PAGE_SHIFT=12 +CONFIG_ARM64_CONT_SHIFT=4 +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_BITS_MAX=33 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 CONFIG_STACKTRACE_SUPPORT=y CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 @@ -32,7 +32,7 @@ CONFIG_IOMMU_HELPER=y CONFIG_KERNEL_MODE_NEON=y CONFIG_FIX_EARLYCON_MEM=y -CONFIG_PGTABLE_LEVELS=2 +CONFIG_PGTABLE_LEVELS=4 CONFIG_SUSE_KERNEL=y # CONFIG_SUSE_KERNEL_SUPPORTED is not set CONFIG_SPLIT_PACKAGE=y @@ -253,9 +253,9 @@ CONFIG_MODULES_USE_ELF_RELA=y CONFIG_ARCH_HAS_ELF_RANDOMIZE=y CONFIG_HAVE_ARCH_MMAP_RND_BITS=y -CONFIG_ARCH_MMAP_RND_BITS=14 +CONFIG_ARCH_MMAP_RND_BITS=18 CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y -CONFIG_ARCH_MMAP_RND_COMPAT_BITS=7 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 # CONFIG_HAVE_ARCH_HASH is not set # CONFIG_ISA_BUS_API is not set CONFIG_CLONE_BACKWARDS=y @@ -443,12 +443,12 @@ CONFIG_CAVIUM_ERRATUM_23144=y CONFIG_CAVIUM_ERRATUM_23154=y CONFIG_CAVIUM_ERRATUM_27456=y -# CONFIG_ARM64_4K_PAGES is not set +CONFIG_ARM64_4K_PAGES=y # CONFIG_ARM64_16K_PAGES is not set -CONFIG_ARM64_64K_PAGES=y -CONFIG_ARM64_VA_BITS_42=y -# CONFIG_ARM64_VA_BITS_48 is not set -CONFIG_ARM64_VA_BITS=42 +# CONFIG_ARM64_64K_PAGES is not set +# CONFIG_ARM64_VA_BITS_39 is not set +CONFIG_ARM64_VA_BITS_48=y +CONFIG_ARM64_VA_BITS=48 # CONFIG_CPU_BIG_ENDIAN is not set CONFIG_SCHED_MC=y CONFIG_SCHED_SMT=y @@ -473,6 +473,7 @@ CONFIG_HAVE_ARCH_PFN_VALID=y CONFIG_HW_PERF_EVENTS=y CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y CONFIG_SELECT_MEMORY_MODEL=y CONFIG_SPARSEMEM_MANUAL=y @@ -520,7 +521,7 @@ # CONFIG_PARAVIRT is not set # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set # CONFIG_XEN is not set -CONFIG_FORCE_MAX_ZONEORDER=14 +CONFIG_FORCE_MAX_ZONEORDER=11 # CONFIG_ARMV8_DEPRECATED is not set # @@ -3444,7 +3445,7 @@ # CONFIG_LP_CONSOLE is not set CONFIG_PPDEV=m CONFIG_HVC_DRIVER=y -CONFIG_HVC_DCC=y +# CONFIG_HVC_DCC is not set CONFIG_VIRTIO_CONSOLE=m CONFIG_IPMI_HANDLER=m CONFIG_IPMI_PANIC_EVENT=y @@ -6360,6 +6361,7 @@ CONFIG_LUSTRE_OBD_MAX_IOCTL_BUFFER=8192 # CONFIG_LUSTRE_DEBUG_EXPENSIVE_CHECK is not set CONFIG_LUSTRE_TRANSLATE_ERRNOS=y +CONFIG_LUSTRE_LLITE_LLOOP=m CONFIG_DGNC=m # CONFIG_GS_FPGABOOT is not set CONFIG_COMMON_CLK_XLNX_CLKWZRD=m ++++++ package-descriptions ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:17.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:17.000000000 +0200 @@ -60,6 +60,14 @@ in the Xen/x86 case, in which case it can be used both as the domain0 ("xen0") and as an unprivileged ("xenU") kernel. +=== kernel-64k === +Kernel with 64kb PAGE_SIZE + +This kernel is identical to the default kernel, but is configured with +64kb page size granule. Its main purpose is to serve as compatibility +kernel for systems that were installed when the default kernel was still +configured with 64kb page size granule. + === kernel-lpae === Kernel for LPAE enabled systems ++++++ patches.arch.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.arch/arm64-Relocate-screen_info.lfb_base-on-PCI-BAR-alloc.patch new/patches.arch/arm64-Relocate-screen_info.lfb_base-on-PCI-BAR-alloc.patch --- old/patches.arch/arm64-Relocate-screen_info.lfb_base-on-PCI-BAR-alloc.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.arch/arm64-Relocate-screen_info.lfb_base-on-PCI-BAR-alloc.patch 2016-09-21 20:31:28.000000000 +0200 @@ -0,0 +1,181 @@ +From 63b4ffb700820634d3bebdd0be2a04575dbeadab Mon Sep 17 00:00:00 2001 +From: Alexander Graf <ag...@suse.de> +Date: Wed, 27 Apr 2016 23:39:30 +0200 +Subject: [PATCH] arm64: Relocate screen_info.lfb_base on PCI BAR allocation +Patch-mainline: Not yet, posted v1 and no reply yet, but this is a P1 +References: bsc#975159 + +When booting with efifb, we get a frame buffer address passed into the system. +This address can be backed by any device, including PCI devices. + +PCI devices can have their BARs mapped to various places inside the PCI window +though. Linux makes use of that on early boot and usually maps PCI BARs wherever +it thinks makes sense. + +If we now load the efifb driver after that BAR map has happened, the frame +buffer address we received may be invalid, because it was in a BAR map before +Linux modified it. + +To work around that issue, this patch introduces a BAR mapping callback that +gets called every time Linux (re)allocates a BAR. That way our arm64 efi code +can check whether the frame buffer is inside the old map and adjust it to +the new one. + +With this and the efifb patches applied, I can successfully see efifb output +even after Linux remapped BARs. + +Signed-off-by: Alexander Graf <ag...@suse.de> +--- + arch/arm64/kernel/efi.c | 40 +++++++++++++++++++++++++++++++++++++++- + drivers/pci/setup-res.c | 29 +++++++++++++++++++++++++++++ + include/linux/pci.h | 8 ++++++++ + 3 files changed, 76 insertions(+), 1 deletion(-) + +--- a/drivers/pci/setup-res.c ++++ b/drivers/pci/setup-res.c +@@ -23,8 +23,10 @@ + #include <linux/ioport.h> + #include <linux/cache.h> + #include <linux/slab.h> ++#include <linux/notifier.h> + #include "pci.h" + ++static RAW_NOTIFIER_HEAD(bar_update_chain); + + void pci_update_resource(struct pci_dev *dev, int resno) + { +@@ -35,6 +37,9 @@ void pci_update_resource(struct pci_dev + int reg; + enum pci_bar_type type; + struct resource *res = dev->resource + resno; ++ struct pci_bar_update_info update_info; ++ struct pci_bus_region update_reg; ++ struct resource update_res; + + if (dev->is_virtfn) { + dev_warn(&dev->dev, "can't update VF BAR%d\n", resno); +@@ -77,6 +82,22 @@ void pci_update_resource(struct pci_dev + } + + /* ++ * Fetch the old BAR location from the device, so we can notify ++ * users of that BAR that its location is changing. ++ */ ++ pci_read_config_dword(dev, reg, &check); ++ update_reg.start = check & PCI_BASE_ADDRESS_MEM_MASK; ++ if (check & PCI_BASE_ADDRESS_MEM_TYPE_64) { ++ pci_read_config_dword(dev, reg, &check); ++ update_reg.start |= ((u64)check) << 32; ++ } ++ update_info.size = region.end - region.start; ++ update_reg.end = update_reg.start + update_info.size; ++ pcibios_bus_to_resource(dev->bus, &update_res, &update_reg); ++ update_info.old_start = update_res.start; ++ update_info.new_start = res->start; ++ ++ /* + * We can't update a 64-bit BAR atomically, so when possible, + * disable decoding so that a half-updated BAR won't conflict + * with another device. +@@ -108,6 +129,14 @@ void pci_update_resource(struct pci_dev + + if (disable) + pci_write_config_word(dev, PCI_COMMAND, cmd); ++ ++ /* Tell interested parties that the BAR mapping changed */ ++ raw_notifier_call_chain(&bar_update_chain, 0, &update_info); ++} ++ ++int pci_notify_on_update_resource(struct notifier_block *nb) ++{ ++ return raw_notifier_chain_register(&bar_update_chain, nb); + } + + int pci_claim_resource(struct pci_dev *dev, int resource) +--- a/include/linux/pci.h ++++ b/include/linux/pci.h +@@ -30,6 +30,7 @@ + #include <linux/device.h> + #include <linux/io.h> + #include <linux/resource_ext.h> ++#include <linux/notifier.h> + #include <uapi/linux/pci.h> + + #include <linux/pci_ids.h> +@@ -1046,6 +1047,13 @@ int pci_select_bars(struct pci_dev *dev, + bool pci_device_is_present(struct pci_dev *pdev); + void pci_ignore_hotplug(struct pci_dev *dev); + ++struct pci_bar_update_info { ++ u64 old_start; ++ u64 new_start; ++ u64 size; ++}; ++int pci_notify_on_update_resource(struct notifier_block *nb); ++ + /* ROM control related routines */ + int pci_enable_rom(struct pci_dev *pdev); + void pci_disable_rom(struct pci_dev *pdev); +--- a/drivers/firmware/efi/arm-init.c ++++ b/drivers/firmware/efi/arm-init.c +@@ -20,6 +20,7 @@ + #include <linux/of.h> + #include <linux/of_fdt.h> + #include <linux/platform_device.h> ++#include <linux/pci.h> + #include <linux/screen_info.h> + + #include <asm/efi.h> +@@ -62,6 +63,41 @@ static __initdata efi_config_table_type_ + {NULL_GUID, NULL, NULL} + }; + ++#ifdef CONFIG_PCI ++static bool efi_pci_overlaps_efifb(struct pci_bar_update_info *update_info) ++{ ++ /* is the screen_info frame buffer inside the pci BAR? */ ++ if (screen_info.lfb_base >= update_info->old_start && ++ (screen_info.lfb_base + screen_info.lfb_size) <= ++ (update_info->old_start + update_info->size)) ++ return true; ++ ++ return false; ++} ++ ++static int efi_pci_notifier(struct notifier_block *self, ++ unsigned long cmd, void *v) ++{ ++ struct pci_bar_update_info *update_info = v; ++ ++ /* ++ * When we reallocate a BAR that contains our frame buffer, set the ++ * screen_info base to where it belongs ++ */ ++ if (efi_pci_overlaps_efifb(update_info)) { ++ u64 diff = (update_info->new_start - update_info->old_start); ++ screen_info.lfb_base += diff; ++ } ++ ++ return NOTIFY_OK; ++} ++static struct notifier_block efi_pci_notifier_block = { ++ .notifier_call = efi_pci_notifier, ++}; ++#else ++#define pci_notify_on_update_resource(a) ++#endif ++ + static void __init init_screen_info(void) + { + struct screen_info *si; +@@ -80,6 +116,10 @@ static void __init init_screen_info(void + screen_info.orig_video_lines = 25; + } + ++ if (screen_info.orig_video_isVGA == VIDEO_TYPE_EFI) { ++ pci_notify_on_update_resource(&efi_pci_notifier_block); ++ } ++ + if (screen_info.orig_video_isVGA == VIDEO_TYPE_EFI && + memblock_is_map_memory(screen_info.lfb_base)) + memblock_mark_nomap(screen_info.lfb_base, screen_info.lfb_size); ++++++ patches.fixes.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/drm-i915-Ignore-OpRegion-panel-type-except-on-select new/patches.fixes/drm-i915-Ignore-OpRegion-panel-type-except-on-select --- old/patches.fixes/drm-i915-Ignore-OpRegion-panel-type-except-on-select 2016-09-20 12:31:35.000000000 +0200 +++ new/patches.fixes/drm-i915-Ignore-OpRegion-panel-type-except-on-select 1970-01-01 01:00:00.000000000 +0100 @@ -1,124 +0,0 @@ -From ea54ff4008892b46c7a3e6bc8ab8aaec9d198639 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrj...@linux.intel.com> -Date: Tue, 13 Sep 2016 12:22:19 +0300 -Subject: [PATCH] drm/i915: Ignore OpRegion panel type except on select machines -Mime-version: 1.0 -Content-type: text/plain; charset=UTF-8 -Content-transfer-encoding: 8bit -Patch-mainline: Queued in subsystem maintainer repository -Git-commit: ea54ff4008892b46c7a3e6bc8ab8aaec9d198639 -Git-repo: git://anongit.freedesktop.org/drm-intel -References: bsc#993996 - -Turns out -commit a05628195a0d ("drm/i915: Get panel_type from OpRegion panel -details") has regressed quite a few machines. So it looks like we -can't use the panel type from OpRegion on all systems, and yet we -absolutely must use it on some specific systems. - -Despite trying, I was unable to find any automagic way to determine -if the OpRegion panel type is respectable or not. The only glimmer -of hope I had was bit 8 in the SCIC response, but that turned out to -not work either (it was always 0 on both types of systems). - -So, to fix the regressions without breaking the machine we know to need -the OpRegion panel type, let's just add a quirk for this. Only specific -machines known to require the OpRegion panel type will therefore use -it. Everyone else will fall bck to the VBT panel type. - -The only known machine so far is a "Conrac GmbH IX45GM2". The PCI -subsystem ID on this machine is just a generic 8086:2a42, so of no use. -Instead we'll go with a DMI match. - -I suspect we can now also revert -commit aeddda06c1a7 ("drm/i915: Ignore panel type from OpRegion on SKL") -but let's leave that to a separate patch. - -V2: Do the DMI match in the opregion code directly, as dev_priv->quirks gets populated too late - -Cc: Rob Kramer <r...@solution-space.com> -Cc: Martin van Es <mar...@mrvanes.com> -Cc: Andrea Arcangeli <aarca...@redhat.com> -Cc: Dave Airlie <airl...@linux.ie> -Cc: Marco Krüger <krg...@gmail.com> -Cc: Sean Greenslade <s...@seangreenslade.com> -Cc: Trudy Tective <bertsl...@gmail.com> -Cc: Robin Müller <rm1...@gmx.de> -Cc: Alexander Kobel <a-ko...@a-kobel.de> -Cc: Alexey Shumitsky <alexey.shumit...@gmail.com> -Cc: Emil Andersen Lauridsen <mine...@gmail.com> -Cc: oceans...@gmail.com -Cc: James Hogan <ja...@albanarts.com> -Cc: James Bottomley <james.bottom...@hansenpartnership.com> -Cc: sta...@vger.kernel.org -References: https://lists.freedesktop.org/archives/intel-gfx/2016-August/105545.html -References: https://lists.freedesktop.org/archives/dri-devel/2016-August/116888.html -References: https://lists.freedesktop.org/archives/intel-gfx/2016-June/098826.html -Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94825 -Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97060 -Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97443 -Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97363 -Fixes: a05628195a0d ("drm/i915: Get panel_type from OpRegion panel details") -Tested-by: Marco Krüger <krg...@gmail.com> -Tested-by: Alexey Shumitsky <alexey.shumit...@gmail.com> -Tested-by: Sean Greenslade <s...@seangreenslade.com> -Tested-by: Emil Andersen Lauridsen <mine...@gmail.com> -Tested-by: Robin Müller <rm1...@gmx.de> -Tested-by: oceans...@gmail.com -Tested-by: Rob Kramer <r...@solution-space.com> -Signed-off-by: Ville Syrjälä <ville.syrj...@linux.intel.com> -Link: http://patchwork.freedesktop.org/patch/msgid/1473758539-21565-1-git-send-email-ville.syrj...@linux.intel.com -References: http://patchwork.freedesktop.org/patch/msgid/1473602239-15855-1-git-send-email-adrienve...@gmail.com -Acked-by: Jani Nikula <jani.nik...@intel.com> -(cherry picked from commit c8ebfad7a063fe665417fa0eeb0da7cfe987d8ed) - -Signed-off-by: Jani Nikula <jani.nik...@intel.com> -Acked-by: Takashi Iwai <ti...@suse.de> - ---- - drivers/gpu/drm/i915/intel_opregion.c | 27 +++++++++++++++++++++++++++ - 1 file changed, 27 insertions(+) - ---- a/drivers/gpu/drm/i915/intel_opregion.c -+++ b/drivers/gpu/drm/i915/intel_opregion.c -@@ -1013,6 +1013,23 @@ err_out: - return err; - } - -+static int intel_use_opregion_panel_type_callback(const struct dmi_system_id *id) -+{ -+ DRM_INFO("Using panel type from OpRegion on %s\n", id->ident); -+ return 1; -+} -+ -+static const struct dmi_system_id intel_use_opregion_panel_type[] = { -+ { -+ .callback = intel_use_opregion_panel_type_callback, -+ .ident = "Conrac GmbH IX45GM2", -+ .matches = {DMI_MATCH(DMI_SYS_VENDOR, "Conrac GmbH"), -+ DMI_MATCH(DMI_PRODUCT_NAME, "IX45GM2"), -+ }, -+ }, -+ { } -+}; -+ - int - intel_opregion_get_panel_type(struct drm_device *dev) - { -@@ -1038,6 +1055,16 @@ intel_opregion_get_panel_type(struct drm - return -ENODEV; - } - -+ /* -+ * So far we know that some machined must use it, others must not use it. -+ * There doesn't seem to be any way to determine which way to go, except -+ * via a quirk list :( -+ */ -+ if (!dmi_check_system(intel_use_opregion_panel_type)) { -+ DRM_DEBUG_KMS("Ignoring OpRegion panel type (%d)\n", ret - 1); -+ return -ENODEV; -+ } -+ - /* - * FIXME On Dell XPS 13 9350 the OpRegion panel type (0) gives us - * low vswing for eDP, whereas the VBT panel type (2) gives us normal diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/mm-oom-prevent-premature-OOM-killer-invocation-for-h.patch new/patches.fixes/mm-oom-prevent-premature-OOM-killer-invocation-for-h.patch --- old/patches.fixes/mm-oom-prevent-premature-OOM-killer-invocation-for-h.patch 2016-09-20 12:31:35.000000000 +0200 +++ new/patches.fixes/mm-oom-prevent-premature-OOM-killer-invocation-for-h.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,123 +0,0 @@ -From 6b4e3181d7bd5ca5ab6f45929e4a5ffa7ab4ab7f Mon Sep 17 00:00:00 2001 -From: Michal Hocko <mho...@suse.com> -Date: Thu, 1 Sep 2016 16:14:41 -0700 -Subject: [PATCH] mm, oom: prevent premature OOM killer invocation for high - order request -Git-commit: 6b4e3181d7bd5ca5ab6f45929e4a5ffa7ab4ab7f -Patch-mainline: 4.8-rc5 -References: bnc#994066 - -There have been several reports about pre-mature OOM killer invocation -in 4.7 kernel when order-2 allocation request (for the kernel stack) -invoked OOM killer even during basic workloads (light IO or even kernel -compile on some filesystems). In all reported cases the memory is -fragmented and there are no order-2+ pages available. There is usually -a large amount of slab memory (usually dentries/inodes) and further -debugging has shown that there are way too many unmovable blocks which -are skipped during the compaction. Multiple reporters have confirmed -that the current linux-next which includes [1] and [2] helped and OOMs -are not reproducible anymore. - -A simpler fix for the late rc and stable is to simply ignore the -compaction feedback and retry as long as there is a reclaim progress and -we are not getting OOM for order-0 pages. We already do that for -CONFING_COMPACTION=n so let's reuse the same code when compaction is -enabled as well. - -[1] http://lkml.kernel.org/r/20160810091226.6709-1-vba...@suse.cz -[2] http://lkml.kernel.org/r/f7a9ea9d-bb88-bfd6-e340-3a9335593...@suse.cz - -Fixes: 0a0337e0d1d1 ("mm, oom: rework oom detection") -Link: http://lkml.kernel.org/r/20160823074339.gb23...@dhcp22.suse.cz -Signed-off-by: Michal Hocko <mho...@suse.com> -Tested-by: Olaf Hering <o...@aepfle.de> -Tested-by: Ralf-Peter Rohbeck <ralf-peter.rohb...@quantum.com> -Cc: Markus Trippelsdorf <mar...@trippelsdorf.de> -Cc: Arkadiusz Miskiewicz <a.miskiew...@gmail.com> -Cc: Ralf-Peter Rohbeck <ralf-peter.rohb...@quantum.com> -Cc: Jiri Slaby <jsl...@suse.com> -Cc: Vlastimil Babka <vba...@suse.cz> -Cc: Joonsoo Kim <js1...@gmail.com> -Cc: Tetsuo Handa <penguin-ker...@i-love.sakura.ne.jp> -Cc: David Rientjes <rient...@google.com> -Cc: <sta...@vger.kernel.org> [4.7.x] -Signed-off-by: Andrew Morton <a...@linux-foundation.org> -Signed-off-by: Linus Torvalds <torva...@linux-foundation.org> - ---- - mm/page_alloc.c | 50 +------------------------------------------------- - 1 file changed, 1 insertion(+), 49 deletions(-) - ---- a/mm/page_alloc.c -+++ b/mm/page_alloc.c -@@ -3253,54 +3253,6 @@ __alloc_pages_direct_compact(gfp_t gfp_m - - return NULL; - } -- --static inline bool --should_compact_retry(struct alloc_context *ac, int order, int alloc_flags, -- enum compact_result compact_result, enum migrate_mode *migrate_mode, -- int compaction_retries) --{ -- int max_retries = MAX_COMPACT_RETRIES; -- -- if (!order) -- return false; -- -- /* -- * compaction considers all the zone as desperately out of memory -- * so it doesn't really make much sense to retry except when the -- * failure could be caused by weak migration mode. -- */ -- if (compaction_failed(compact_result)) { -- if (*migrate_mode == MIGRATE_ASYNC) { -- *migrate_mode = MIGRATE_SYNC_LIGHT; -- return true; -- } -- return false; -- } -- -- /* -- * make sure the compaction wasn't deferred or didn't bail out early -- * due to locks contention before we declare that we should give up. -- * But do not retry if the given zonelist is not suitable for -- * compaction. -- */ -- if (compaction_withdrawn(compact_result)) -- return compaction_zonelist_suitable(ac, order, alloc_flags); -- -- /* -- * !costly requests are much more important than __GFP_REPEAT -- * costly ones because they are de facto nofail and invoke OOM -- * killer to move on while costly can fail and users are ready -- * to cope with that. 1/4 retries is rather arbitrary but we -- * would need much more detailed feedback from compaction to -- * make a better decision. -- */ -- if (order > PAGE_ALLOC_COSTLY_ORDER) -- max_retries /= 4; -- if (compaction_retries <= max_retries) -- return true; -- -- return false; --} - #else - static inline struct page * - __alloc_pages_direct_compact(gfp_t gfp_mask, unsigned int order, -@@ -3310,6 +3262,7 @@ __alloc_pages_direct_compact(gfp_t gfp_m - *compact_result = COMPACT_SKIPPED; - return NULL; - } -+#endif /* CONFIG_COMPACTION */ - - static inline bool - should_compact_retry(struct alloc_context *ac, unsigned int order, int alloc_flags, -@@ -3337,7 +3290,6 @@ should_compact_retry(struct alloc_contex - } - return false; - } --#endif /* CONFIG_COMPACTION */ - - /* Perform direct synchronous page reclaim */ - static int diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/scsi-arcmsr-buffer-overflow-in-arcmsr_iop_message_xfer.patch new/patches.fixes/scsi-arcmsr-buffer-overflow-in-arcmsr_iop_message_xfer.patch --- old/patches.fixes/scsi-arcmsr-buffer-overflow-in-arcmsr_iop_message_xfer.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.fixes/scsi-arcmsr-buffer-overflow-in-arcmsr_iop_message_xfer.patch 2016-09-25 12:39:49.000000000 +0200 @@ -0,0 +1,47 @@ +From: Dan Carpenter <dan.carpen...@oracle.com> +Date: Thu, 15 Sep 2016 16:44:56 +0300 +Subject: scsi: arcmsr: Buffer overflow in arcmsr_iop_message_xfer() +Patch-mainline: v4.9-rc1 +Git-commit: 7bc2b55a5c030685b399bb65b6baa9ccc3d1f167 +References: bsc#999932 CVE-2016-7425 + +We need to put an upper bound on "user_len" so the memcpy() doesn't +overflow. + +Cc: <sta...@vger.kernel.org> +Reported-by: Marco Grassi <marco....@gmail.com> +Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com> +Reviewed-by: Tomas Henzl <the...@redhat.com> +Signed-off-by: Martin K. Petersen <martin.peter...@oracle.com> +Acked-by: Borislav Petkov <b...@suse.de> +--- + drivers/scsi/arcmsr/arcmsr_hba.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/drivers/scsi/arcmsr/arcmsr_hba.c b/drivers/scsi/arcmsr/arcmsr_hba.c +index 7640498964a5..110eca9eaca0 100644 +--- a/drivers/scsi/arcmsr/arcmsr_hba.c ++++ b/drivers/scsi/arcmsr/arcmsr_hba.c +@@ -2388,7 +2388,8 @@ static int arcmsr_iop_message_xfer(struct AdapterControlBlock *acb, + } + case ARCMSR_MESSAGE_WRITE_WQBUFFER: { + unsigned char *ver_addr; +- int32_t user_len, cnt2end; ++ uint32_t user_len; ++ int32_t cnt2end; + uint8_t *pQbuffer, *ptmpuserbuffer; + ver_addr = kmalloc(ARCMSR_API_DATA_BUFLEN, GFP_ATOMIC); + if (!ver_addr) { +@@ -2397,6 +2398,11 @@ static int arcmsr_iop_message_xfer(struct AdapterControlBlock *acb, + } + ptmpuserbuffer = ver_addr; + user_len = pcmdmessagefld->cmdmessage.Length; ++ if (user_len > ARCMSR_API_DATA_BUFLEN) { ++ retvalue = ARCMSR_MESSAGE_FAIL; ++ kfree(ver_addr); ++ goto message_out; ++ } + memcpy(ptmpuserbuffer, + pcmdmessagefld->messagedatabuffer, user_len); + spin_lock_irqsave(&acb->wqbuffer_lock, flags); + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/tcp-fix-use-after-free-in-tcp_xmit_retransmit_queue.patch new/patches.fixes/tcp-fix-use-after-free-in-tcp_xmit_retransmit_queue.patch --- old/patches.fixes/tcp-fix-use-after-free-in-tcp_xmit_retransmit_queue.patch 2016-09-20 12:31:35.000000000 +0200 +++ new/patches.fixes/tcp-fix-use-after-free-in-tcp_xmit_retransmit_queue.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,60 +0,0 @@ -From: Eric Dumazet <eduma...@google.com> -Date: Wed, 17 Aug 2016 05:56:26 -0700 -Subject: tcp: fix use after free in tcp_xmit_retransmit_queue() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit -Patch-mainline: Queued in subsystem maintainer repository (target: v4.8) -Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git -Git-commit: bb1fceca22492109be12640d49f5ea5a544c6bb4 -References: CVE-2016-6828 bsc#994296 - -When tcp_sendmsg() allocates a fresh and empty skb, it puts it at the -tail of the write queue using tcp_add_write_queue_tail() - -Then it attempts to copy user data into this fresh skb. - -If the copy fails, we undo the work and remove the fresh skb. - -Unfortunately, this undo lacks the change done to tp->highest_sack and -we can leave a dangling pointer (to a freed skb) - -Later, tcp_xmit_retransmit_queue() can dereference this pointer and -access freed memory. For regular kernels where memory is not unmapped, -this might cause SACK bugs because tcp_highest_sack_seq() is buggy, -returning garbage instead of tp->snd_nxt, but with various debug -features like CONFIG_DEBUG_PAGEALLOC, this can crash the kernel. - -This bug was found by Marco Grassi thanks to syzkaller. - -Fixes: 6859d49475d4 ("[TCP]: Abstract tp->highest_sack accessing & point to next skb") -Reported-by: Marco Grassi <marco....@gmail.com> -Signed-off-by: Eric Dumazet <eduma...@google.com> -Cc: Ilpo Järvinen <ilpo.jarvi...@helsinki.fi> -Cc: Yuchung Cheng <ych...@google.com> -Cc: Neal Cardwell <ncardw...@google.com> -Acked-by: Neal Cardwell <ncardw...@google.com> -Reviewed-by: Cong Wang <xiyou.wangc...@gmail.com> -Signed-off-by: David S. Miller <da...@davemloft.net> -Acked-by: Michal Kubecek <mkube...@suse.cz> - ---- - include/net/tcp.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/include/net/tcp.h b/include/net/tcp.h -index 0bcc70f4e1fb..725405170f0e 100644 ---- a/include/net/tcp.h -+++ b/include/net/tcp.h -@@ -1522,6 +1522,8 @@ static inline void tcp_check_send_head(struct sock *sk, struct sk_buff *skb_unli - { - if (sk->sk_send_head == skb_unlinked) - sk->sk_send_head = NULL; -+ if (tcp_sk(sk)->highest_sack == skb_unlinked) -+ tcp_sk(sk)->highest_sack = NULL; - } - - static inline void tcp_init_send_head(struct sock *sk) --- -2.9.3 - ++++++ patches.kernel.org.tar.bz2 ++++++ ++++ 7186 lines of diff (skipped) ++++++ patches.rpmify.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.rpmify/i915-fix-build-error-with-werror new/patches.rpmify/i915-fix-build-error-with-werror --- old/patches.rpmify/i915-fix-build-error-with-werror 2016-07-04 17:30:35.000000000 +0200 +++ new/patches.rpmify/i915-fix-build-error-with-werror 1970-01-01 01:00:00.000000000 +0100 @@ -1,27 +0,0 @@ -From: Jeff Mahoney <je...@suse.com> -Subject: i915: fix build error with -Werror -Patch-mainline: submitted 4 July 2016 - -This fixes the following build error with -Werror and gcc 6.1: - -drivers/gpu/drm/i915/i915_debugfs.c:2103:6: error: suggest explicit braces to avoid ambiguous 'else' [-Werror=parentheses] - -Signed-off-by: Jeff Mahoney <je...@suse.com> ---- - drivers/gpu/drm/i915/i915_debugfs.c | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - ---- a/drivers/gpu/drm/i915/i915_debugfs.c -+++ b/drivers/gpu/drm/i915/i915_debugfs.c -@@ -2100,9 +2100,10 @@ static int i915_dump_lrc(struct seq_file - return ret; - - list_for_each_entry(ctx, &dev_priv->context_list, link) -- if (ctx != dev_priv->kernel_context) -+ if (ctx != dev_priv->kernel_context) { - for_each_engine(engine, dev_priv) - i915_dump_lrc_obj(m, ctx, engine); -+ } - - mutex_unlock(&dev->struct_mutex); - ++++++ patches.suse.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/btrfs-ensure-that-file-descriptor-used-with-subvol-i.patch new/patches.suse/btrfs-ensure-that-file-descriptor-used-with-subvol-i.patch --- old/patches.suse/btrfs-ensure-that-file-descriptor-used-with-subvol-i.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.suse/btrfs-ensure-that-file-descriptor-used-with-subvol-i.patch 2016-09-21 16:46:45.000000000 +0200 @@ -0,0 +1,63 @@ +From 3417599681be35a9fac77c5128c381467066f028 Mon Sep 17 00:00:00 2001 +From: Jeff Mahoney <je...@suse.com> +Date: Tue, 20 Sep 2016 22:02:30 -0400 +Subject: btrfs: ensure that file descriptor used with subvol ioctls is a dir +References: bsc#999600 +Patch-mainline: Submitted to linux-btrfs, 21 Sep 2016 + +If the subvol/snapshot create/destroy ioctls are passed a regular file +with execute permissions set, we'll eventually Oops while trying to do +inode->i_op->lookup via lookup_one_len. + +This patch ensures that the file descriptor refers to a directory. + +Fixes: cb8e70901d (Btrfs: Fix subvolume creation locking rules) +Fixes: 76dda93c6a (Btrfs: add snapshot/subvolume destroy ioctl) +Cc: <sta...@vger.kernel.org> #v2.6.29+ +Signed-off-by: Jeff Mahoney <je...@suse.com> +--- + fs/btrfs/ioctl.c | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +--- a/fs/btrfs/ioctl.c ++++ b/fs/btrfs/ioctl.c +@@ -1620,6 +1620,9 @@ static noinline int btrfs_ioctl_snap_cre + int namelen; + int ret = 0; + ++ if (!S_ISDIR(file_inode(file)->i_mode)) ++ return -ENOTDIR; ++ + ret = mnt_want_write_file(file); + if (ret) + goto out; +@@ -1677,6 +1680,9 @@ static noinline int btrfs_ioctl_snap_cre + struct btrfs_ioctl_vol_args *vol_args; + int ret; + ++ if (!S_ISDIR(file_inode(file)->i_mode)) ++ return -ENOTDIR; ++ + vol_args = memdup_user(arg, sizeof(*vol_args)); + if (IS_ERR(vol_args)) + return PTR_ERR(vol_args); +@@ -1700,6 +1706,9 @@ static noinline int btrfs_ioctl_snap_cre + bool readonly = false; + struct btrfs_qgroup_inherit *inherit = NULL; + ++ if (!S_ISDIR(file_inode(file)->i_mode)) ++ return -ENOTDIR; ++ + vol_args = memdup_user(arg, sizeof(*vol_args)); + if (IS_ERR(vol_args)) + return PTR_ERR(vol_args); +@@ -2344,6 +2353,9 @@ static noinline int btrfs_ioctl_snap_des + int ret; + int err = 0; + ++ if (!S_ISDIR(dir->i_mode)) ++ return -ENOTDIR; ++ + vol_args = memdup_user(arg, sizeof(*vol_args)); + if (IS_ERR(vol_args)) + return PTR_ERR(vol_args); ++++++ pre.sh ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:18.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:18.000000000 +0200 @@ -19,3 +19,44 @@ fi fi fi + + +# On AArch64 we switched from 64k PAGE_SIZE to 4k PAGE_SIZE. Unfortunately +# btrfs can only use file systems created with the same PAGE_SIZE. So we +# check if the user has any btrfs file systems mounted and refuse to install +# in that case. +if [ $( uname -m ) = aarch64 -a \ + "$( zgrep CONFIG_ARM64_64K_PAGES=y /proc/config.gz )" -a \ + @FLAVOR@ = default ]; then + if [ "$FORCE_4K" = 1 ]; then + # The user knows what he's doing, let him be. + exit 0 + fi + + if [ "$YAST_IS_RUNNING" = "instsys" ]; then + # We're probably test installing the kernel, that should succeed + exit 0 + fi + + cat >&2 <<-EOF + + You are running on a 64kb PAGE_SIZE kernel. The default kernel + switched to 4kb PAGE_SIZE which will prevent it from mounting btrfs + or the swap partition. + + To ensure that your system still works, I am refusing to install + this kernel. If you want to force installation regardlesss, reinstall + with the environment variable FORCE_4K set to 1. + + To stay with a 64kb PAGE_SIZE kernel, please follow these steps: + + $ zypper in kernel-64kb + [ reboot into the new kernel ] + $ zypper rm kernel-default + + You will then be on the 64kb PAGE_SIZE kernel and can update your + system normally. + EOF + + exit 1 +fi ++++++ series.conf ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:18.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:18.000000000 +0200 @@ -31,6 +31,7 @@ patches.kernel.org/patch-4.7.1-2 patches.kernel.org/patch-4.7.2-3 patches.kernel.org/patch-4.7.3-4 + patches.kernel.org/patch-4.7.4-5 ######################################################## # Build fixes that apply to the vanilla kernel too. @@ -38,7 +39,6 @@ # and patched flavors. ######################################################## patches.rpmify/lustre-lloop-dont-change-logical-size - patches.rpmify/i915-fix-build-error-with-werror ######################################################## # kABI consistency patches @@ -164,6 +164,9 @@ patches.arch/arm64-3-6-drivers-net-phy-Add-MDIO-driver.patch patches.arch/arm64-6-6-drivers-net-xgene-Fix-module-load-unload-crash.patch + # arm64 fix efifb to relocate the fb on BAR move + patches.arch/arm64-Relocate-screen_info.lfb_base-on-PCI-BAR-alloc.patch + ######################################################## # S/390 ######################################################## @@ -180,7 +183,6 @@ # Changes to tunable defaults patches.suse/readahead-request-tunables.patch - patches.fixes/mm-oom-prevent-premature-OOM-killer-invocation-for-h.patch ######################################################## # IPC patches @@ -225,7 +227,6 @@ ######################################################## # Networking, IPv6 ######################################################## - patches.fixes/tcp-fix-use-after-free-in-tcp_xmit_retransmit_queue.patch ######################################################## # Netfilter @@ -260,6 +261,7 @@ # btrfs ######################################################## patches.suse/btrfs-provide-super_operations-get_inode_dev + patches.suse/btrfs-ensure-that-file-descriptor-used-with-subvol-i.patch ######################################################## # Reiserfs Patches @@ -325,6 +327,8 @@ patches.fixes/scsi-ibmvscsi-module_alias.patch + # bsc#999932 CVE-2016-7425 + patches.fixes/scsi-arcmsr-buffer-overflow-in-arcmsr_iop_message_xfer.patch ######################################################## # DRM/Video @@ -332,7 +336,6 @@ patches.fixes/x86-hibernate-Use-hlt_play_dead-when-resuming-from-h patches.fixes/drm-i915-Add-distinct-stubs-for-PM-hibernation-phase patches.fixes/drm-i915-Fix-S4-resume-breakage - patches.fixes/drm-i915-Ignore-OpRegion-panel-type-except-on-select ######################################################## # video4linux ++++++ source-timestamp ++++++ --- /var/tmp/diff_new_pack.mvVkn6/_old 2016-09-28 11:29:18.000000000 +0200 +++ /var/tmp/diff_new_pack.mvVkn6/_new 2016-09-28 11:29:18.000000000 +0200 @@ -1,3 +1,3 @@ -2016-09-20 16:55:16 +0200 -GIT Revision: 4de94c3a393cb849d5a02556d1273f0c62d5b813 +2016-09-26 10:11:45 +0200 +GIT Revision: 02c4d354864c8d678437b715c2c0076de96eeb39 GIT Branch: stable