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 - agraf@suse.de
+
+- rpm/package-descriptions: Add 64kb kernel flavor description
+- commit 8462c50
+
+-------------------------------------------------------------------
+Sun Sep 25 12:39:49 CEST 2016 - bp@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 - jslaby@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 - agraf@suse.de
+
+- arm64: disable hvc_dcc
+- commit 89df77c
+
+-------------------------------------------------------------------
+Wed Sep 21 20:02:39 CEST 2016 - agraf@suse.de
+
+- arm64: Relocate screen_info.lfb_base on PCI BAR allocation (bsc#975159).
+- commit c3f6949
+
+-------------------------------------------------------------------
+Wed Sep 21 17:48:39 CEST 2016 - agraf@suse.de
+
+- arm64: Refuse to install 4k kernel on 64k system
+- commit 5565330
+
+-------------------------------------------------------------------
+Wed Sep 21 16:15:46 CEST 2016 - jeffm@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 - agraf@suse.de
+
+- arm64: Add 64kb flavor for 64kb page size
+- commit 4f006b4
+
+-------------------------------------------------------------------
+Tue Sep 20 18:25:14 CEST 2016 - agraf@suse.de
+
+- Switch arm64 default config to 4k
+- commit 5244f77
+
+-------------------------------------------------------------------
+Tue Sep 20 12:29:38 CEST 2016 - tiwai@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 - jslaby@suse.cz
+
+- Linux 4.7.4.
+- commit b93c795
+
+-------------------------------------------------------------------
+Wed Sep 14 15:54:36 CEST 2016 - jeffm@suse.com
+
+- config: enable RANDOMIZE_BASE and friends (bsc#998554).
+- commit 4de94c3
+
+-------------------------------------------------------------------
+Wed Sep 14 13:45:16 CEST 2016 - tiwai@suse.de
+
+- drm/i915: Ignore OpRegion panel type except on select machines (bsc#993996).
+- commit 6a5bbb1
+
+-------------------------------------------------------------------
+Mon Sep 12 21:25:36 CEST 2016 - mhocko@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 - tiwai@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 - tiwai@suse.de
+
+- autofs - use dentry flags to block walks during expire
+ (bsc#997639).
+- commit 268a807
+
+-------------------------------------------------------------------
+Wed Sep 7 09:38:58 CEST 2016 - jslaby@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 - tiwai@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 - mkubecek@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 - jslaby@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 - mmarek@suse.cz
+
+- rpm/old-flavors: Obsolte kernel-compute by kernel-rt (fate#320686)
+- commit 964f3e2
+
+-------------------------------------------------------------------
+Tue Aug 16 16:32:45 CEST 2016 - jslaby@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 - mmarek@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 - jthumshirn@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 - jslaby@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 - jthumshirn@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 - neilb@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 - tiwai@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 - agraf@suse.de
+
+- rpm/package-descriptions: Add 64kb kernel flavor description
+- commit 8462c50
+
+-------------------------------------------------------------------
+Sun Sep 25 12:39:49 CEST 2016 - bp@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 - jslaby@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 - agraf@suse.de
+
+- arm64: disable hvc_dcc
+- commit 89df77c
+
+-------------------------------------------------------------------
+Wed Sep 21 20:02:39 CEST 2016 - agraf@suse.de
+
+- arm64: Relocate screen_info.lfb_base on PCI BAR allocation (bsc#975159).
+- commit c3f6949
+
+-------------------------------------------------------------------
+Wed Sep 21 17:48:39 CEST 2016 - agraf@suse.de
+
+- arm64: Refuse to install 4k kernel on 64k system
+- commit 5565330
+
+-------------------------------------------------------------------
+Wed Sep 21 16:15:46 CEST 2016 - jeffm@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 - agraf@suse.de
+
+- arm64: Add 64kb flavor for 64kb page size
+- commit 4f006b4
+
+-------------------------------------------------------------------
+Tue Sep 20 18:25:14 CEST 2016 - agraf@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
+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
+---
+ 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
+ #include
+ #include
++#include
+ #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
+ #include
+ #include
++#include
+ #include
+
+ #include
+@@ -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
+ #include
+ #include
++#include
+ #include
+
+ #include
+@@ -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?=
-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
-Cc: Martin van Es
-Cc: Andrea Arcangeli
-Cc: Dave Airlie
-Cc: Marco Krüger
-Cc: Sean Greenslade
-Cc: Trudy Tective
-Cc: Robin Müller
-Cc: Alexander Kobel
-Cc: Alexey Shumitsky
-Cc: Emil Andersen Lauridsen
-Cc: oceans112@gmail.com
-Cc: James Hogan
-Cc: James Bottomley
-Cc: stable@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
-Tested-by: Alexey Shumitsky
-Tested-by: Sean Greenslade
-Tested-by: Emil Andersen Lauridsen
-Tested-by: Robin Müller
-Tested-by: oceans112@gmail.com
-Tested-by: Rob Kramer
-Signed-off-by: Ville Syrjälä
-Link: http://patchwork.freedesktop.org/patch/msgid/1473758539-21565-1-git-send-ema...
-References: http://patchwork.freedesktop.org/patch/msgid/1473602239-15855-1-git-send-ema...
-Acked-by: Jani Nikula
-(cherry picked from commit c8ebfad7a063fe665417fa0eeb0da7cfe987d8ed)
-
-Signed-off-by: Jani Nikula
-Acked-by: Takashi Iwai
-
----
- 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
-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-vbabka@suse.cz
-[2] http://lkml.kernel.org/r/f7a9ea9d-bb88-bfd6-e340-3a933559305a@suse.cz
-
-Fixes: 0a0337e0d1d1 ("mm, oom: rework oom detection")
-Link: http://lkml.kernel.org/r/20160823074339.GB23577@dhcp22.suse.cz
-Signed-off-by: Michal Hocko
-Tested-by: Olaf Hering
-Tested-by: Ralf-Peter Rohbeck
-Cc: Markus Trippelsdorf
-Cc: Arkadiusz Miskiewicz
-Cc: Ralf-Peter Rohbeck
-Cc: Jiri Slaby
-Cc: Vlastimil Babka
-Cc: Joonsoo Kim
-Cc: Tetsuo Handa
-Cc: David Rientjes
-Cc: [4.7.x]
-Signed-off-by: Andrew Morton
-Signed-off-by: Linus Torvalds
-
----
- 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
+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:
+Reported-by: Marco Grassi
+Signed-off-by: Dan Carpenter
+Reviewed-by: Tomas Henzl
+Signed-off-by: Martin K. Petersen
+Acked-by: Borislav Petkov
+---
+ 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
-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
-Signed-off-by: Eric Dumazet
-Cc: Ilpo Järvinen
-Cc: Yuchung Cheng
-Cc: Neal Cardwell
-Acked-by: Neal Cardwell
-Reviewed-by: Cong Wang
-Signed-off-by: David S. Miller
-Acked-by: Michal Kubecek
-
----
- 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
-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
----
- 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
+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: #v2.6.29+
+Signed-off-by: Jeff Mahoney
+---
+ 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