Hello community,

here is the log from the commit of package kernel-source for openSUSE:Factory 
checked in at 2017-01-16 11:14:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kernel-source (Old)
 and      /work/SRC/openSUSE:Factory/.kernel-source.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "kernel-source"

Changes:
--------
--- /work/SRC/openSUSE:Factory/kernel-source/dtb-aarch64.changes        
2016-12-26 21:44:42.013572842 +0100
+++ /work/SRC/openSUSE:Factory/.kernel-source.new/dtb-aarch64.changes   
2017-01-16 11:14:03.140262799 +0100
@@ -1,0 +2,72 @@
+Thu Jan 12 12:32:53 CET 2017 - [email protected]
+
+- drm: Fix broken VT switch with video=1366x768 option
+  (bsc#1018358).
+- commit 2c7dfab
+
+-------------------------------------------------------------------
+Thu Jan 12 11:48:58 CET 2017 - [email protected]
+
+- Linux 4.9.3 (bnc#1012628 bsc#1000433).
+- Delete
+  patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu.
+- commit 7204b59
+
+-------------------------------------------------------------------
+Mon Jan  9 10:22:07 CET 2017 - [email protected]
+
+- Linux 4.9.2 (bnc#1012628 bsc#1000433).
+- Refresh
+  patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu.
+- Delete
+  patches.drivers/drm-radeon-Also-call-cursor_move_locked-when-the-cur.
+- Delete
+  patches.drivers/drm-radeon-Hide-the-HW-cursor-while-it-s-out-of-boun.
+- commit 2d3c294
+
+-------------------------------------------------------------------
+Fri Jan  6 13:04:49 CET 2017 - [email protected]
+
+- Linux 4.9.1 (bnc#1012628 bnc#1016101 bsc#1010690).
+- Delete
+  patches.fixes/ASoC-intel-Fix-crash-at-suspend-resume-without-card.
+- Delete
+  patches.rpmify/kbuild-provide-include-asm-asm-prototypes.h-for-x86.patch.
+- commit da02006
+
+-------------------------------------------------------------------
+Thu Jan  5 09:51:31 CET 2017 - [email protected]
+
+- fbcon: Fix vc attr at deinit (bsc#1000619).
+- commit e989b9d
+
+-------------------------------------------------------------------
+Mon Jan  2 10:56:20 CET 2017 - [email protected]
+
+- drm: Use u64 for intermediate dotclock calculations
+  (bnc#1006472).
+- commit 1af4b0f
+
+-------------------------------------------------------------------
+Mon Jan  2 10:01:14 CET 2017 - [email protected]
+
+- x86/kbuild: enable modversions for symbols exported from asm
+  (bnc#1016101).
+  Replace by the upstream version.
+- commit 772efd7
+
+-------------------------------------------------------------------
+Wed Dec 28 20:39:34 CET 2016 - [email protected]
+
+- rpm/kernel-binary.spec.in: Obsolete ftsteutates KMP (boo#997172)
+- commit 8519edc
+
+-------------------------------------------------------------------
+Mon Dec 19 12:03:38 CET 2016 - [email protected]
+
+- config: Disable GPIO_TS4900 in most kernels
+  The gpio-ts4900 driver is only useful on i.MX6 boards, and only one
+  of our kernels supports them.
+- commit 92e9ad3
+
+-------------------------------------------------------------------
dtb-armv6l.changes: same change
dtb-armv7l.changes: same change
kernel-64kb.changes: same change
kernel-debug.changes: same change
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-syzkaller.changes: same change
kernel-vanilla.changes: same change

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ dtb-aarch64.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:09.739327209 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:09.743326642 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package dtb-aarch64
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,14 +16,14 @@
 #
 
 
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 
 %include %_sourcedir/kernel-spec-macros
 
 Name:           dtb-aarch64
-Version:        4.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif

dtb-armv6l.spec: same change
dtb-armv7l.spec: same change
++++++ kernel-64kb.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:09.827314735 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:09.831314168 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-64kb
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 
 %define srcversion 4.9
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        Kernel with 64kb PAGE_SIZE
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif
@@ -351,6 +351,8 @@
 # sle12-sp1 / Leap 42.1
 %obsolete_kmp  xen 4.6.1
 %obsolete_kmp  compat-wireless 4.4
+# TW 4.8
+%obsolete_kmp  ftsteutates 20160601
 
 # Provide the exported symbols as "ksym(symbol) = hash"
 %define _use_internal_dependency_generator 0

kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-docs.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:09.911302827 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:09.911302827 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-docs
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,7 +16,7 @@
 #
 
 
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %define variant %{nil}
 
 %include %_sourcedir/kernel-spec-macros
@@ -33,9 +33,9 @@
 Summary:        Kernel Documentation (man pages)
 License:        GPL-2.0
 Group:          Documentation/Man
-Version:        4.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif

++++++ kernel-lpae.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:09.943298291 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:09.947297724 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-lpae
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 
 %define srcversion 4.9
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        Kernel for LPAE enabled systems
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif
@@ -351,6 +351,8 @@
 # sle12-sp1 / Leap 42.1
 %obsolete_kmp  xen 4.6.1
 %obsolete_kmp  compat-wireless 4.4
+# TW 4.8
+%obsolete_kmp  ftsteutates 20160601
 
 # Provide the exported symbols as "ksym(symbol) = hash"
 %define _use_internal_dependency_generator 0

++++++ kernel-obs-build.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:09.971294322 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:09.971294322 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-obs-build
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
 
 #!BuildIgnore: post-build-checks
 
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %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.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif

++++++ kernel-obs-qa.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:10.003289786 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:10.007289219 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-obs-qa
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 # needsrootforbuild
 
 
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %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.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif

++++++ kernel-pae.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:10.035285250 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:10.039284683 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-pae
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 
 %define srcversion 4.9
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        Kernel with PAE Support
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif
@@ -373,6 +373,8 @@
 # sle12-sp1 / Leap 42.1
 %obsolete_kmp  xen 4.6.1
 %obsolete_kmp  compat-wireless 4.4
+# TW 4.8
+%obsolete_kmp  ftsteutates 20160601
 
 # Provide the exported symbols as "ksym(symbol) = hash"
 %define _use_internal_dependency_generator 0

++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:10.059281847 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:10.063281280 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-source
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 
 %define srcversion 4.9
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %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.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif

++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:10.087277878 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:10.087277878 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-syms
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,10 +24,10 @@
 Summary:        Kernel Symbol Versions (modversions)
 License:        GPL-2.0
 Group:          Development/Sources
-Version:        4.9.0
+Version:        4.9.3
 %if %using_buildservice
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif

++++++ kernel-syzkaller.spec ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:10.115273909 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:10.115273909 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package kernel-syzkaller
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 
 %define srcversion 4.9
-%define patchversion 4.9.0
+%define patchversion 4.9.3
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        Kernel used for fuzzing by syzkaller
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.9.0
+Version:        4.9.3
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g6fbc0c0
+Release:        <RELEASE>.g2c7dfab
 %else
 Release:        0
 %endif
@@ -351,6 +351,8 @@
 # sle12-sp1 / Leap 42.1
 %obsolete_kmp  xen 4.6.1
 %obsolete_kmp  compat-wireless 4.4
+# TW 4.8
+%obsolete_kmp  ftsteutates 20160601
 
 # Provide the exported symbols as "ksym(symbol) = hash"
 %define _use_internal_dependency_generator 0

kernel-vanilla.spec: same change
++++++ config.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/arm64/default new/config/arm64/default
--- old/config/arm64/default    2016-12-12 15:21:46.000000000 +0100
+++ new/config/arm64/default    2016-12-19 12:03:38.000000000 +0100
@@ -3882,7 +3882,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/armv6hl/default new/config/armv6hl/default
--- old/config/armv6hl/default  2016-12-12 15:21:46.000000000 +0100
+++ new/config/armv6hl/default  2016-12-19 12:03:38.000000000 +0100
@@ -3124,7 +3124,7 @@
 CONFIG_GPIO_PCF857X=m
 CONFIG_GPIO_SX150X=y
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/armv7hl/lpae new/config/armv7hl/lpae
--- old/config/armv7hl/lpae     2016-12-12 15:21:46.000000000 +0100
+++ new/config/armv7hl/lpae     2016-12-19 12:03:38.000000000 +0100
@@ -3984,7 +3984,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/debug new/config/i386/debug
--- old/config/i386/debug       2016-12-12 15:21:46.000000000 +0100
+++ new/config/i386/debug       2016-12-19 12:03:38.000000000 +0100
@@ -4091,7 +4091,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/default new/config/i386/default
--- old/config/i386/default     2016-12-12 15:21:46.000000000 +0100
+++ new/config/i386/default     2016-12-19 12:03:38.000000000 +0100
@@ -4106,7 +4106,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/pae new/config/i386/pae
--- old/config/i386/pae 2016-12-12 15:21:46.000000000 +0100
+++ new/config/i386/pae 2016-12-19 12:03:38.000000000 +0100
@@ -4013,7 +4013,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64/debug new/config/ppc64/debug
--- old/config/ppc64/debug      2016-12-12 15:21:46.000000000 +0100
+++ new/config/ppc64/debug      2016-12-19 12:03:38.000000000 +0100
@@ -3525,7 +3525,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64/default new/config/ppc64/default
--- old/config/ppc64/default    2016-12-12 15:21:46.000000000 +0100
+++ new/config/ppc64/default    2016-12-19 12:03:38.000000000 +0100
@@ -3514,7 +3514,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64le/debug new/config/ppc64le/debug
--- old/config/ppc64le/debug    2016-12-12 15:21:46.000000000 +0100
+++ new/config/ppc64le/debug    2016-12-19 12:03:38.000000000 +0100
@@ -3395,7 +3395,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64le/default new/config/ppc64le/default
--- old/config/ppc64le/default  2016-12-12 15:21:46.000000000 +0100
+++ new/config/ppc64le/default  2016-12-19 12:03:38.000000000 +0100
@@ -3384,7 +3384,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/debug new/config/x86_64/debug
--- old/config/x86_64/debug     2016-12-12 15:21:46.000000000 +0100
+++ new/config/x86_64/debug     2016-12-19 12:03:38.000000000 +0100
@@ -4020,7 +4020,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/default new/config/x86_64/default
--- old/config/x86_64/default   2016-12-12 15:21:46.000000000 +0100
+++ new/config/x86_64/default   2016-12-19 12:03:38.000000000 +0100
@@ -4006,7 +4006,7 @@
 CONFIG_GPIO_PCF857X=m
 # CONFIG_GPIO_SX150X is not set
 CONFIG_GPIO_TPIC2810=m
-CONFIG_GPIO_TS4900=m
+# CONFIG_GPIO_TS4900 is not set
 
 #
 # MFD GPIO expanders

++++++ kernel-binary.spec.in ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:10.859168443 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:10.863167876 +0100
@@ -223,6 +223,8 @@
 # sle12-sp1 / Leap 42.1
 %obsolete_kmp  xen 4.6.1
 %obsolete_kmp  compat-wireless 4.4
+# TW 4.8
+%obsolete_kmp  ftsteutates 20160601
 
 # Provide the exported symbols as "ksym(symbol) = hash"
 %define _use_internal_dependency_generator 0

++++++ patches.drivers.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/drm-Fix-broken-VT-switch-with-video-1366x768-option 
new/patches.drivers/drm-Fix-broken-VT-switch-with-video-1366x768-option
--- old/patches.drivers/drm-Fix-broken-VT-switch-with-video-1366x768-option     
1970-01-01 01:00:00.000000000 +0100
+++ new/patches.drivers/drm-Fix-broken-VT-switch-with-video-1366x768-option     
2017-01-12 12:32:53.000000000 +0100
@@ -0,0 +1,71 @@
+From fdf35a6b22247746a7053fc764d04218a9306f82 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <[email protected]>
+Date: Mon, 9 Jan 2017 15:56:14 +0100
+Subject: [PATCH] drm: Fix broken VT switch with video=1366x768 option
+Mime-version: 1.0
+Content-type: text/plain; charset=UTF-8
+Content-transfer-encoding: 8bit
+Git-commit: fdf35a6b22247746a7053fc764d04218a9306f82
+References: bsc#1018358
+Git-repo: git://anongit.freedesktop.org/git/drm-misc
+Patch-mainline: Queued in subsystem maintainer repository
+
+I noticed that the VT switch doesn't work any longer with a Dell
+laptop with 1366x768 eDP when the machine is connected with a DP
+monitor.  It behaves as if VT were switched, but the graphics remain
+frozen.  Actually the keyboard works, so I could switch back to VT7
+again.
+
+I tried to track down the problem, and encountered a long story until
+we reach to this error:
+
+- The machine is booted with video=1366x768 option (the distro
+  installer seems to add it as default).
+- Recently, drm_helper_probe_single_connector_modes() deals with
+  cmdline modes, and it tries to create a new mode when no
+  matching mode is found.
+- The drm_mode_create_from_cmdline_mode() creates a mode based on
+  either CVT of GFT according to the given cmdline mode; in our case,
+  it's 1366x768.
+- Since both CVT and GFT can't express the width 1366 due to
+  alignment, the resultant mode becomes 1368x768, slightly larger than
+  the given size.
+- Later on, the atomic commit is performed, and in
+  drm_atomic_check_only(), the size of each plane is checked.
+- The size check of 1366x768 fails due to the above, and eventually
+  the whole VT switch fails.
+
+Back in the history, we've had a manual fix-up of 1368x768 in various
+places via c09dedb7a50e ("drm/edid: Add a workaround for 1366x768 HD
+panel"), but they have been all in drm_edid.c at probing the modes
+from EDID.  For addressing the problem above, we need a similar hack
+to the mode newly created from cmdline, manually adjusting the width
+when the expected size is 1366 while we get 1368 instead.
+
+Fixes: eaf99c749d43 ("drm: Perform cmdline mode parsing during...")
+Cc: <[email protected]>
+Signed-off-by: Takashi Iwai <[email protected]>
+Link: 
http://patchwork.freedesktop.org/patch/msgid/[email protected]
+Reviewed-by: Ville Syrjälä <[email protected]>
+Signed-off-by: Ville Syrjälä <[email protected]>
+
+---
+ drivers/gpu/drm/drm_modes.c |    7 +++++++
+ 1 file changed, 7 insertions(+)
+
+--- a/drivers/gpu/drm/drm_modes.c
++++ b/drivers/gpu/drm/drm_modes.c
+@@ -1466,6 +1466,13 @@ drm_mode_create_from_cmdline_mode(struct
+               return NULL;
+ 
+       mode->type |= DRM_MODE_TYPE_USERDEF;
++      /* fix up 1368x768: GFT/CVT can't express 1366 width due to alignment */
++      if (cmd->xres == 1366 && mode->hdisplay == 1368) {
++              mode->hdisplay = 1366;
++              mode->hsync_start--;
++              mode->hsync_end--;
++              drm_mode_set_name(mode);
++      }
+       drm_mode_set_crtcinfo(mode, CRTC_INTERLACE_HALVE_V);
+       return mode;
+ }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/drm-radeon-Also-call-cursor_move_locked-when-the-cur 
new/patches.drivers/drm-radeon-Also-call-cursor_move_locked-when-the-cur
--- old/patches.drivers/drm-radeon-Also-call-cursor_move_locked-when-the-cur    
2016-10-27 17:32:08.000000000 +0200
+++ new/patches.drivers/drm-radeon-Also-call-cursor_move_locked-when-the-cur    
1970-01-01 01:00:00.000000000 +0100
@@ -1,46 +0,0 @@
-From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <[email protected]>
-Date: Thu, 27 Oct 2016 16:59:42 +0900
-Subject: [PATCH 2/3] drm/radeon: Also call cursor_move_locked when the cursor 
size changes
-Mime-version: 1.0
-Content-type: text/plain; charset=UTF-8
-Content-transfer-encoding: 8bit
-References: bsc#1000433
-Patch-mainline: Submitted, amd-gfx ML
-
-The cursor size also affects the register programming.
-
-Cc: [email protected]
-Signed-off-by: Michel Dänzer <[email protected]>
-Signed-off-by: Takashi Iwai <[email protected]>
-
----
- drivers/gpu/drm/radeon/radeon_cursor.c |    9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
---- a/drivers/gpu/drm/radeon/radeon_cursor.c
-+++ b/drivers/gpu/drm/radeon/radeon_cursor.c
-@@ -297,12 +297,11 @@ int radeon_crtc_cursor_set2(struct drm_c
-               return ret;
-       }
- 
--      radeon_crtc->cursor_width = width;
--      radeon_crtc->cursor_height = height;
--
-       radeon_lock_cursor(crtc, true);
- 
--      if (hot_x != radeon_crtc->cursor_hot_x ||
-+      if (width != radeon_crtc->cursor_width ||
-+          height != radeon_crtc->cursor_height ||
-+          hot_x != radeon_crtc->cursor_hot_x ||
-           hot_y != radeon_crtc->cursor_hot_y) {
-               int x, y;
- 
-@@ -311,6 +310,8 @@ int radeon_crtc_cursor_set2(struct drm_c
- 
-               radeon_cursor_move_locked(crtc, x, y);
- 
-+              radeon_crtc->cursor_width = width;
-+              radeon_crtc->cursor_height = height;
-               radeon_crtc->cursor_hot_x = hot_x;
-               radeon_crtc->cursor_hot_y = hot_y;
-       }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu 
new/patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu
--- old/patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu    
2016-10-27 17:32:08.000000000 +0200
+++ new/patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu    
1970-01-01 01:00:00.000000000 +0100
@@ -1,45 +0,0 @@
-From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <[email protected]>
-Date: Thu, 27 Oct 2016 16:59:43 +0900
-Subject: [PATCH 1/3] drm/radeon: Always store CRTC relative 
radeon_crtc->cursor_x/y values
-Mime-version: 1.0
-Content-type: text/plain; charset=UTF-8
-Content-transfer-encoding: 8bit
-References: bsc#1000433
-Patch-mainline: Submitted, amd-gfx ML
-
-We were storing viewport relative coordinates for AVIVO/DCE display
-engines. However, radeon_crtc_cursor_set2 and radeon_cursor_reset pass
-radeon_crtc->cursor_x/y as the x/y parameters of
-radeon_cursor_move_locked, which would break if the CRTC isn't located
-at (0, 0).
-
-Cc: [email protected]
-Signed-off-by: Michel Dänzer <[email protected]>
-Signed-off-by: Takashi Iwai <[email protected]>
-
----
- drivers/gpu/drm/radeon/radeon_cursor.c |    6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
---- a/drivers/gpu/drm/radeon/radeon_cursor.c
-+++ b/drivers/gpu/drm/radeon/radeon_cursor.c
-@@ -143,6 +143,9 @@ static int radeon_cursor_move_locked(str
-       int xorigin = 0, yorigin = 0;
-       int w = radeon_crtc->cursor_width;
- 
-+      radeon_crtc->cursor_x = x;
-+      radeon_crtc->cursor_y = y;
-+
-       if (ASIC_IS_AVIVO(rdev)) {
-               /* avivo cursor are offset into the total surface */
-               x += crtc->x;
-@@ -229,9 +232,6 @@ static int radeon_cursor_move_locked(str
-                      yorigin * 256);
-       }
- 
--      radeon_crtc->cursor_x = x;
--      radeon_crtc->cursor_y = y;
--
-       return 0;
- }
- 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/drm-radeon-Hide-the-HW-cursor-while-it-s-out-of-boun 
new/patches.drivers/drm-radeon-Hide-the-HW-cursor-while-it-s-out-of-boun
--- old/patches.drivers/drm-radeon-Hide-the-HW-cursor-while-it-s-out-of-boun    
2016-10-27 17:32:08.000000000 +0200
+++ new/patches.drivers/drm-radeon-Hide-the-HW-cursor-while-it-s-out-of-boun    
1970-01-01 01:00:00.000000000 +0100
@@ -1,158 +0,0 @@
-From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <[email protected]>
-Date: Thu, 27 Oct 2016 16:59:44 +0900
-Subject: [PATCH 3/3] drm/radeon: Hide the HW cursor while it's out of bounds
-Mime-version: 1.0
-Content-type: text/plain; charset=UTF-8
-Content-transfer-encoding: 8bit
-References: bsc#1000433
-Patch-mainline: Submitted, amd-gfx ML
-
-Fixes hangs in that case under some circumstances.
-
-Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1000433
-Cc: [email protected]
-Signed-off-by: Michel Dänzer <[email protected]>
-Signed-off-by: Takashi Iwai <[email protected]>
-
----
- drivers/gpu/drm/radeon/radeon_cursor.c |   66 
++++++++++++++++++++-------------
- drivers/gpu/drm/radeon/radeon_mode.h   |    1 
- 2 files changed, 42 insertions(+), 25 deletions(-)
-
---- a/drivers/gpu/drm/radeon/radeon_cursor.c
-+++ b/drivers/gpu/drm/radeon/radeon_cursor.c
-@@ -90,6 +90,9 @@ static void radeon_show_cursor(struct dr
-       struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc);
-       struct radeon_device *rdev = crtc->dev->dev_private;
- 
-+      if (radeon_crtc->cursor_out_of_bounds)
-+              return;
-+
-       if (ASIC_IS_DCE4(rdev)) {
-               WREG32(EVERGREEN_CUR_SURFACE_ADDRESS_HIGH + 
radeon_crtc->crtc_offset,
-                      upper_32_bits(radeon_crtc->cursor_addr));
-@@ -146,21 +149,14 @@ static int radeon_cursor_move_locked(str
-       radeon_crtc->cursor_x = x;
-       radeon_crtc->cursor_y = y;
- 
--      if (ASIC_IS_AVIVO(rdev)) {
--              /* avivo cursor are offset into the total surface */
--              x += crtc->x;
--              y += crtc->y;
--      }
--      DRM_DEBUG("x %d y %d c->x %d c->y %d\n", x, y, crtc->x, crtc->y);
--
--      if (x < 0) {
-+      if (x < 0)
-               xorigin = min(-x, radeon_crtc->max_cursor_width - 1);
--              x = 0;
--      }
--      if (y < 0) {
-+      if (y < 0)
-               yorigin = min(-y, radeon_crtc->max_cursor_height - 1);
--              y = 0;
--      }
-+
-+      x += crtc->x;
-+      y += crtc->y;
-+      DRM_DEBUG("x %d y %d c->x %d c->y %d\n", x, y, crtc->x, crtc->y);
- 
-       /* fixed on DCE6 and newer */
-       if (ASIC_IS_AVIVO(rdev) && !ASIC_IS_DCE6(rdev)) {
-@@ -183,27 +179,31 @@ static int radeon_cursor_move_locked(str
-               if (i > 1) {
-                       int cursor_end, frame_end;
- 
--                      cursor_end = x - xorigin + w;
-+                      cursor_end = x + w;
-                       frame_end = crtc->x + crtc->mode.crtc_hdisplay;
-                       if (cursor_end >= frame_end) {
-                               w = w - (cursor_end - frame_end);
-                               if (!(frame_end & 0x7f))
-                                       w--;
--                      } else {
--                              if (!(cursor_end & 0x7f))
--                                      w--;
-+                      } else if (cursor_end <= 0) {
-+                              goto out_of_bounds;
-+                      } else if (!(cursor_end & 0x7f)) {
-+                              w--;
-                       }
-                       if (w <= 0) {
--                              w = 1;
--                              cursor_end = x - xorigin + w;
--                              if (!(cursor_end & 0x7f)) {
--                                      x--;
--                                      WARN_ON_ONCE(x < 0);
--                              }
-+                              goto out_of_bounds;
-                       }
-               }
-       }
- 
-+      if (x <= (crtc->x - w) || y <= (crtc->y - radeon_crtc->cursor_height) ||
-+          x >= (crtc->x + crtc->mode.crtc_hdisplay) ||
-+          y >= (crtc->y + crtc->mode.crtc_vdisplay))
-+              goto out_of_bounds;
-+
-+      x += xorigin;
-+      y += yorigin;
-+
-       if (ASIC_IS_DCE4(rdev)) {
-               WREG32(EVERGREEN_CUR_POSITION + radeon_crtc->crtc_offset, (x << 
16) | y);
-               WREG32(EVERGREEN_CUR_HOT_SPOT + radeon_crtc->crtc_offset, 
(xorigin << 16) | yorigin);
-@@ -215,6 +215,9 @@ static int radeon_cursor_move_locked(str
-               WREG32(AVIVO_D1CUR_SIZE + radeon_crtc->crtc_offset,
-                      ((w - 1) << 16) | (radeon_crtc->cursor_height - 1));
-       } else {
-+              x -= crtc->x;
-+              y -= crtc->y;
-+
-               if (crtc->mode.flags & DRM_MODE_FLAG_DBLSCAN)
-                       y *= 2;
- 
-@@ -232,6 +235,19 @@ static int radeon_cursor_move_locked(str
-                      yorigin * 256);
-       }
- 
-+      if (radeon_crtc->cursor_out_of_bounds) {
-+              radeon_crtc->cursor_out_of_bounds = false;
-+              if (radeon_crtc->cursor_bo)
-+                      radeon_show_cursor(crtc);
-+      }
-+
-+      return 0;
-+
-+ out_of_bounds:
-+      if (!radeon_crtc->cursor_out_of_bounds) {
-+              radeon_hide_cursor(crtc);
-+              radeon_crtc->cursor_out_of_bounds = true;
-+      }
-       return 0;
- }
- 
-@@ -308,12 +324,12 @@ int radeon_crtc_cursor_set2(struct drm_c
-               x = radeon_crtc->cursor_x + radeon_crtc->cursor_hot_x - hot_x;
-               y = radeon_crtc->cursor_y + radeon_crtc->cursor_hot_y - hot_y;
- 
--              radeon_cursor_move_locked(crtc, x, y);
--
-               radeon_crtc->cursor_width = width;
-               radeon_crtc->cursor_height = height;
-               radeon_crtc->cursor_hot_x = hot_x;
-               radeon_crtc->cursor_hot_y = hot_y;
-+
-+              radeon_cursor_move_locked(crtc, x, y);
-       }
- 
-       radeon_show_cursor(crtc);
---- a/drivers/gpu/drm/radeon/radeon_mode.h
-+++ b/drivers/gpu/drm/radeon/radeon_mode.h
-@@ -330,6 +330,7 @@ struct radeon_crtc {
-       u16 lut_r[256], lut_g[256], lut_b[256];
-       bool enabled;
-       bool can_tile;
-+      bool cursor_out_of_bounds;
-       uint32_t crtc_offset;
-       struct drm_gem_object *cursor_bo;
-       uint64_t cursor_addr;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.drivers/fbcon-Fix-vc-attr-at-deinit 
new/patches.drivers/fbcon-Fix-vc-attr-at-deinit
--- old/patches.drivers/fbcon-Fix-vc-attr-at-deinit     1970-01-01 
01:00:00.000000000 +0100
+++ new/patches.drivers/fbcon-Fix-vc-attr-at-deinit     2017-01-12 
12:32:53.000000000 +0100
@@ -0,0 +1,142 @@
+From: Takashi Iwai <[email protected]>
+Date: Tue, 3 Jan 2017 14:47:46 +0100
+Subject: [PATCH] fbcon: Fix vc attr at deinit
+Message-Id: <[email protected]>
+Patch-mainline: Submitted, linux-fbdev ML
+References: bsc#1000619
+
+fbcon can deal with vc_hi_font_mask (the upper 256 chars) and adjust
+the vc attrs dynamically when vc_hi_font_mask is changed at
+fbcon_init().  When the vc_hi_font_mask is set, it remaps the attrs in
+the existing console buffer with one bit shift up (for 9 bits), while
+it remaps with one bit shift down (for 8 bits) when the value is
+cleared.  It works fine as long as the font gets updated after fbcon
+was initialized.
+
+However, we hit a bizarre problem when the console is switched to
+another fb driver (typically from vesafb or efifb to drmfb).  At
+switching to the new fb driver, we temporarily rebind the console to
+the dummy console, then rebind to the new driver.  During the
+switching, we leave the modified attrs as is.  Thus, the new fbcon
+takes over the old buffer as if it were to contain 8 bits chars
+(although the attrs are still shifted for 9 bits), and effectively
+this results in the yellow color texts instead of the original white
+color, as found in the bugzilla entry below.
+
+An easy fix for this is to re-adjust the attrs before leaving the
+fbcon at con_deinit callback.  Since the code to adjust the attrs is
+already present in the current fbcon code, in this patch, we simply
+factor out the relevant code, and call it from fbcon_deinit().
+
+Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1000619
+Signed-off-by: Takashi Iwai <[email protected]>
+---
+ drivers/video/console/fbcon.c |   67 
+++++++++++++++++++++++++-----------------
+ 1 file changed, 40 insertions(+), 27 deletions(-)
+
+--- a/drivers/video/console/fbcon.c
++++ b/drivers/video/console/fbcon.c
+@@ -1165,6 +1165,8 @@ static void fbcon_free_font(struct displ
+       p->userfont = 0;
+ }
+ 
++static void set_vc_hi_font(struct vc_data *vc, bool set);
++
+ static void fbcon_deinit(struct vc_data *vc)
+ {
+       struct display *p = &fb_display[vc->vc_num];
+@@ -1200,6 +1202,9 @@ finished:
+       if (free_font)
+               vc->vc_font.data = NULL;
+ 
++      if (vc->vc_hi_font_mask)
++              set_vc_hi_font(vc, false);
++
+       if (!con_is_bound(&fb_con))
+               fbcon_exit();
+ 
+@@ -2436,32 +2441,10 @@ static int fbcon_get_font(struct vc_data
+       return 0;
+ }
+ 
+-static int fbcon_do_set_font(struct vc_data *vc, int w, int h,
+-                           const u8 * data, int userfont)
++/* set/clear vc_hi_font_mask and update vc attrs accordingly */
++static void set_vc_hi_font(struct vc_data *vc, bool set)
+ {
+-      struct fb_info *info = registered_fb[con2fb_map[vc->vc_num]];
+-      struct fbcon_ops *ops = info->fbcon_par;
+-      struct display *p = &fb_display[vc->vc_num];
+-      int resize;
+-      int cnt;
+-      char *old_data = NULL;
+-
+-      if (con_is_visible(vc) && softback_lines)
+-              fbcon_set_origin(vc);
+-
+-      resize = (w != vc->vc_font.width) || (h != vc->vc_font.height);
+-      if (p->userfont)
+-              old_data = vc->vc_font.data;
+-      if (userfont)
+-              cnt = FNTCHARCNT(data);
+-      else
+-              cnt = 256;
+-      vc->vc_font.data = (void *)(p->fontdata = data);
+-      if ((p->userfont = userfont))
+-              REFCOUNT(data)++;
+-      vc->vc_font.width = w;
+-      vc->vc_font.height = h;
+-      if (vc->vc_hi_font_mask && cnt == 256) {
++      if (!set) {
+               vc->vc_hi_font_mask = 0;
+               if (vc->vc_can_do_color) {
+                       vc->vc_complement_mask >>= 1;
+@@ -2484,7 +2467,7 @@ static int fbcon_do_set_font(struct vc_d
+                           ((c & 0xfe00) >> 1) | (c & 0xff);
+                       vc->vc_attr >>= 1;
+               }
+-      } else if (!vc->vc_hi_font_mask && cnt == 512) {
++      } else {
+               vc->vc_hi_font_mask = 0x100;
+               if (vc->vc_can_do_color) {
+                       vc->vc_complement_mask <<= 1;
+@@ -2516,8 +2499,38 @@ static int fbcon_do_set_font(struct vc_d
+                       } else
+                               vc->vc_video_erase_char = c & ~0x100;
+               }
+-
+       }
++}
++
++static int fbcon_do_set_font(struct vc_data *vc, int w, int h,
++                           const u8 * data, int userfont)
++{
++      struct fb_info *info = registered_fb[con2fb_map[vc->vc_num]];
++      struct fbcon_ops *ops = info->fbcon_par;
++      struct display *p = &fb_display[vc->vc_num];
++      int resize;
++      int cnt;
++      char *old_data = NULL;
++
++      if (con_is_visible(vc) && softback_lines)
++              fbcon_set_origin(vc);
++
++      resize = (w != vc->vc_font.width) || (h != vc->vc_font.height);
++      if (p->userfont)
++              old_data = vc->vc_font.data;
++      if (userfont)
++              cnt = FNTCHARCNT(data);
++      else
++              cnt = 256;
++      vc->vc_font.data = (void *)(p->fontdata = data);
++      if ((p->userfont = userfont))
++              REFCOUNT(data)++;
++      vc->vc_font.width = w;
++      vc->vc_font.height = h;
++      if (vc->vc_hi_font_mask && cnt == 256)
++              set_vc_hi_font(vc, false);
++      else if (!vc->vc_hi_font_mask && cnt == 512)
++              set_vc_hi_font(vc, true);
+ 
+       if (resize) {
+               int cols, rows;

++++++ patches.fixes.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/ASoC-intel-Fix-crash-at-suspend-resume-without-card 
new/patches.fixes/ASoC-intel-Fix-crash-at-suspend-resume-without-card
--- old/patches.fixes/ASoC-intel-Fix-crash-at-suspend-resume-without-card       
2016-12-15 10:39:22.000000000 +0100
+++ new/patches.fixes/ASoC-intel-Fix-crash-at-suspend-resume-without-card       
1970-01-01 01:00:00.000000000 +0100
@@ -1,63 +0,0 @@
-From: Takashi Iwai <[email protected]>
-Date: Fri, 25 Nov 2016 14:50:51 +0100
-Subject: [PATCH] ASoC: intel: Fix crash at suspend/resume without card
- registration
-References: bsc#1010690
-Patch-mainline: Submitted, alsa-devel ML Fri, 25 Nov 2016
-
-When ASoC Intel SST Medfield driver is probed but without codec / card
-assigned, it causes an Oops and freezes the kernel at suspend/resume,
-
- PM: Suspending system (freeze)
- Suspending console(s) (use no_console_suspend to debug)
- BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
- IP: [<ffffffffc09d9409>] sst_soc_prepare+0x19/0xa0 [snd_soc_sst_mfld_platform]
- Oops: 0000 [#1] PREEMPT SMP
- CPU: 0 PID: 1552 Comm: systemd-sleep Tainted: G W 
4.9.0-rc6-1.g5f5c2ad-default #1
- Call Trace:
-  [<ffffffffb45318f9>] dpm_prepare+0x209/0x460
-  [<ffffffffb4531b61>] dpm_suspend_start+0x11/0x60
-  [<ffffffffb40d3cc2>] suspend_devices_and_enter+0xb2/0x710
-  [<ffffffffb40d462e>] pm_suspend+0x30e/0x390
-  [<ffffffffb40d2eba>] state_store+0x8a/0x90
-  [<ffffffffb43c670f>] kobj_attr_store+0xf/0x20
-  [<ffffffffb42b0d97>] sysfs_kf_write+0x37/0x40
-  [<ffffffffb42b02bc>] kernfs_fop_write+0x11c/0x1b0
-  [<ffffffffb422be68>] __vfs_write+0x28/0x140
-  [<ffffffffb43728a8>] ? apparmor_file_permission+0x18/0x20
-  [<ffffffffb433b2ab>] ? security_file_permission+0x3b/0xc0
-  [<ffffffffb422d095>] vfs_write+0xb5/0x1a0
-  [<ffffffffb422e3d6>] SyS_write+0x46/0xa0
-  [<ffffffffb4719fbb>] entry_SYSCALL_64_fastpath+0x1e/0xad
-
-Add proper NULL checks in the PM code of mdfld driver.
-
-Cc: <[email protected]>
-Signed-off-by: Takashi Iwai <[email protected]>
-
----
- sound/soc/intel/atom/sst-mfld-platform-pcm.c |    6 ++++++
- 1 file changed, 6 insertions(+)
-
---- a/sound/soc/intel/atom/sst-mfld-platform-pcm.c
-+++ b/sound/soc/intel/atom/sst-mfld-platform-pcm.c
-@@ -771,6 +771,9 @@ static int sst_soc_prepare(struct device
-       struct sst_data *drv = dev_get_drvdata(dev);
-       struct snd_soc_pcm_runtime *rtd;
- 
-+      if (!drv->soc_card)
-+              return 0;
-+
-       /* suspend all pcms first */
-       snd_soc_suspend(drv->soc_card->dev);
-       snd_soc_poweroff(drv->soc_card->dev);
-@@ -793,6 +796,9 @@ static void sst_soc_complete(struct devi
-       struct sst_data *drv = dev_get_drvdata(dev);
-       struct snd_soc_pcm_runtime *rtd;
- 
-+      if (!drv->soc_card)
-+              return;
-+
-       /* restart SSPs */
-       list_for_each_entry(rtd, &drv->soc_card->rtd_list, list) {
-               struct snd_soc_dai *dai = rtd->cpu_dai;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/drm-Use-u64-for-intermediate-dotclock-calculations.patch 
new/patches.fixes/drm-Use-u64-for-intermediate-dotclock-calculations.patch
--- old/patches.fixes/drm-Use-u64-for-intermediate-dotclock-calculations.patch  
1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/drm-Use-u64-for-intermediate-dotclock-calculations.patch  
2017-01-06 13:04:49.000000000 +0100
@@ -0,0 +1,53 @@
+From: Chris Wilson <[email protected]>
+Date: Fri, 21 Oct 2016 15:15:40 +0100
+Subject: drm: Use u64 for intermediate dotclock calculations
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Git-commit: 8a5bbf327aa16025c78491266a6425807c7fbee0
+Patch-mainline: v4.10-rc1
+References: bnc#1006472
+
+We have reached the era where monitor bandwidths now exceed 31bits in
+frequency calculations, though as we stored them in kHz units we are
+safe from overflow in the modelines for some time.
+
+[   48.723720] UBSAN: Undefined behaviour in 
../drivers/gpu/drm/drm_modes.c:325:49
+[   48.726943] signed integer overflow:
+[   48.728503] 2240 * 1000000 cannot be represented in type 'int'
+
+Reported-by: Martin Liška <[email protected]>
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98372
+Signed-off-by: Chris Wilson <[email protected]>
+Reviewed-by: Alex Deucher <[email protected]>
+Signed-off-by: Daniel Vetter <[email protected]>
+Link: 
http://patchwork.freedesktop.org/patch/msgid/[email protected]
+Signed-off-by: Jiri Slaby <[email protected]>
+---
+ drivers/gpu/drm/drm_modes.c |    8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+--- a/drivers/gpu/drm/drm_modes.c
++++ b/drivers/gpu/drm/drm_modes.c
+@@ -165,6 +165,7 @@ struct drm_display_mode *drm_cvt_mode(st
+       unsigned int vfieldrate, hperiod;
+       int hdisplay_rnd, hmargin, vdisplay_rnd, vmargin, vsync;
+       int interlace;
++      u64 tmp;
+ 
+       /* allocate the drm_display_mode structure. If failure, we will
+        * return directly
+@@ -322,8 +323,11 @@ struct drm_display_mode *drm_cvt_mode(st
+               drm_mode->vsync_end = drm_mode->vsync_start + vsync;
+       }
+       /* 15/13. Find pixel clock frequency (kHz for xf86) */
+-      drm_mode->clock = drm_mode->htotal * HV_FACTOR * 1000 / hperiod;
+-      drm_mode->clock -= drm_mode->clock % CVT_CLOCK_STEP;
++      tmp = drm_mode->htotal; /* perform intermediate calcs in u64 */
++      tmp *= HV_FACTOR * 1000;
++      do_div(tmp, hperiod);
++      tmp -= drm_mode->clock % CVT_CLOCK_STEP;
++      drm_mode->clock = tmp;
+       /* 18/16. Find actual vertical frame frequency */
+       /* ignore - just set the mode flag for interlaced */
+       if (interlaced) {

++++++ patches.kernel.org.tar.bz2 ++++++
++++ 15511 lines of diff (skipped)

++++++ patches.rpmify.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.rpmify/kbuild-provide-include-asm-asm-prototypes.h-for-x86.patch 
new/patches.rpmify/kbuild-provide-include-asm-asm-prototypes.h-for-x86.patch
--- 
old/patches.rpmify/kbuild-provide-include-asm-asm-prototypes.h-for-x86.patch    
    2016-12-16 20:49:48.000000000 +0100
+++ 
new/patches.rpmify/kbuild-provide-include-asm-asm-prototypes.h-for-x86.patch    
    1970-01-01 01:00:00.000000000 +0100
@@ -1,56 +0,0 @@
-From: Adam Borowski <[email protected]>
-Date: Mon, 17 Oct 2016 11:42:35 +0200
-Subject: kbuild: provide include/asm/asm-prototypes.h for x86
-References: bnc#1016101
-Patch-mainline: submitted, 
http://marc.info/?l=linux-kernel&m=147669851906489&w=2
-
-Nicholas Piggin wrote:
-> Architectures will need to have an include/asm/asm-prototypes.h that
-> defines or #include<>s C-style prototypes for exported asm functions.
-> We can do an asm-generic version for the common ones like memset so
-> there's not a lot of pointless duplication there.
-
-Signed-off-by: Adam Borowski <[email protected]>
-Signed-off-by: Jiri Slaby <[email protected]>
----
- arch/x86/include/asm/asm-prototypes.h | 13 +++++++++++++
- include/asm-generic/asm-prototypes.h  |  7 +++++++
- 2 files changed, 20 insertions(+)
- create mode 100644 arch/x86/include/asm/asm-prototypes.h
- create mode 100644 include/asm-generic/asm-prototypes.h
-
-diff --git a/arch/x86/include/asm/asm-prototypes.h 
b/arch/x86/include/asm/asm-prototypes.h
-new file mode 100644
-index 000000000000..072c97c56508
---- /dev/null
-+++ b/arch/x86/include/asm/asm-prototypes.h
-@@ -0,0 +1,13 @@
-+#include <asm/ftrace.h>
-+#include <asm/uaccess.h>
-+#include <asm/uaccess.h>
-+#include <asm/string.h>
-+#include <asm/page.h>
-+#include <asm/checksum.h>
-+
-+#include <asm-generic/asm-prototypes.h>
-+
-+#include <asm/page.h>
-+#include <asm/pgtable.h>
-+#include <asm/special_insns.h>
-+#include <asm/preempt.h>
-diff --git a/include/asm-generic/asm-prototypes.h 
b/include/asm-generic/asm-prototypes.h
-new file mode 100644
-index 000000000000..df13637e4017
---- /dev/null
-+++ b/include/asm-generic/asm-prototypes.h
-@@ -0,0 +1,7 @@
-+#include <linux/bitops.h>
-+extern void *__memset(void *, int, __kernel_size_t);
-+extern void *__memcpy(void *, const void *, __kernel_size_t);
-+extern void *__memmove(void *, const void *, __kernel_size_t);
-+extern void *memset(void *, int, __kernel_size_t);
-+extern void *memcpy(void *, const void *, __kernel_size_t);
-+extern void *memmove(void *, const void *, __kernel_size_t);
--- 
-2.11.0
-

++++++ series.conf ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:11.523074317 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:11.523074317 +0100
@@ -27,6 +27,9 @@
        # DO NOT MODIFY THEM!
        # Send separate patches upstream if you find a problem...
        ########################################################
+       patches.kernel.org/patch-4.9.1
+       patches.kernel.org/patch-4.9.1-2
+       patches.kernel.org/patch-4.9.2-3
 
        ########################################################
        # Build fixes that apply to the vanilla kernel too.
@@ -50,7 +53,6 @@
        patches.rpmify/firmware-path
        patches.rpmify/cloneconfig.diff
        patches.rpmify/get_builtin_firmware-gcc-7.patch
-       patches.rpmify/kbuild-provide-include-asm-asm-prototypes.h-for-x86.patch
 
        ########################################################
        # kbuild/module infrastructure fixes
@@ -313,9 +315,8 @@
        # DRM/Video
        ########################################################
        patches.fixes/drm-i915-Fix-S4-resume-breakage
-       patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu
-       patches.drivers/drm-radeon-Also-call-cursor_move_locked-when-the-cur
-       patches.drivers/drm-radeon-Hide-the-HW-cursor-while-it-s-out-of-boun
+       patches.fixes/drm-Use-u64-for-intermediate-dotclock-calculations.patch
+       patches.drivers/drm-Fix-broken-VT-switch-with-video-1366x768-option
 
        ########################################################
        # video4linux
@@ -364,12 +365,12 @@
        ##########################################################
        # Sound
        ##########################################################
-       patches.fixes/ASoC-intel-Fix-crash-at-suspend-resume-without-card
 
        ########################################################
        # Char / serial
        ########################################################
        patches.fixes/revert-tty-serial-8250-add-CON_CONSDEV-to-flags.patch
+       patches.drivers/fbcon-Fix-vc-attr-at-deinit
 
        ########################################################
        # Other driver fixes

++++++ source-timestamp ++++++
--- /var/tmp/diff_new_pack.PJIOAe/_old  2017-01-16 11:14:11.555069781 +0100
+++ /var/tmp/diff_new_pack.PJIOAe/_new  2017-01-16 11:14:11.555069781 +0100
@@ -1,3 +1,3 @@
-2016-12-16 20:51:27 +0100
-GIT Revision: 6fbc0c027176b3d960a58adeff1c433623dc8497
+2017-01-12 12:32:53 +0100
+GIT Revision: 2c7dfab6a4e89109339d071c5bcf7729ebf791d1
 GIT Branch: stable


Reply via email to