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 - tiwai@suse.de + +- drm: Fix broken VT switch with video=1366x768 option + (bsc#1018358). +- commit 2c7dfab + +------------------------------------------------------------------- +Thu Jan 12 11:48:58 CET 2017 - jslaby@suse.cz + +- 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 - jslaby@suse.cz + +- 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 - jslaby@suse.cz + +- 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 - tiwai@suse.de + +- fbcon: Fix vc attr at deinit (bsc#1000619). +- commit e989b9d + +------------------------------------------------------------------- +Mon Jan 2 10:56:20 CET 2017 - jslaby@suse.cz + +- drm: Use u64 for intermediate dotclock calculations + (bnc#1006472). +- commit 1af4b0f + +------------------------------------------------------------------- +Mon Jan 2 10:01:14 CET 2017 - jslaby@suse.cz + +- 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 - tiwai@suse.de + +- rpm/kernel-binary.spec.in: Obsolete ftsteutates KMP (boo#997172) +- commit 8519edc + +------------------------------------------------------------------- +Mon Dec 19 12:03:38 CET 2016 - jdelvare@suse.de + +- 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 <tiwai@suse.de> +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: <stable@vger.kernel.org> +Signed-off-by: Takashi Iwai <tiwai@suse.de> +Link: http://patchwork.freedesktop.org/patch/msgid/20170109145614.29454-1-tiwai@su... +Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> +Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> + +--- + 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?= <michel.daenzer@amd.com> -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: stable@vger.kernel.org -Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> -Signed-off-by: Takashi Iwai <tiwai@suse.de> - ---- - 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?= <michel.daenzer@amd.com> -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: stable@vger.kernel.org -Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> -Signed-off-by: Takashi Iwai <tiwai@suse.de> - ---- - 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?= <michel.daenzer@amd.com> -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: stable@vger.kernel.org -Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> -Signed-off-by: Takashi Iwai <tiwai@suse.de> - ---- - 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 <tiwai@suse.de> +Date: Tue, 3 Jan 2017 14:47:46 +0100 +Subject: [PATCH] fbcon: Fix vc attr at deinit +Message-Id: <20170103150322.10350-1-tiwai@suse.de> +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 <tiwai@suse.de> +--- + 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 <tiwai@suse.de> -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: <stable@vger.kernel.org> -Signed-off-by: Takashi Iwai <tiwai@suse.de> - ---- - 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 <chris@chris-wilson.co.uk> +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 <marxin.liska@gmail.com> +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98372 +Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> +Reviewed-by: Alex Deucher <alexander.deucher@amd.com> +Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> +Link: http://patchwork.freedesktop.org/patch/msgid/20161021141540.26837-1-chris@ch... +Signed-off-by: Jiri Slaby <jslaby@suse.cz> +--- + 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 <kilobyte@angband.pl> -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 <kilobyte@angband.pl> -Signed-off-by: Jiri Slaby <jslaby@suse.cz> ---- - 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
participants (1)
-
root@hilbertn.suse.de