Hello community, here is the log from the commit of package kernel-source for openSUSE:Factory checked in at 2015-12-18 21:53:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 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/kernel-debug.changes 2015-11-17 14:19:32.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-debug.changes 2015-12-18 21:53:45.000000000 +0100 @@ -1,0 +2,131 @@ +Wed Dec 16 09:03:35 CET 2015 - [email protected] + +- drm/i915: Do a better job at disabling primary plane in the + noatomic case (bnc#954137). +- commit db72752 + +------------------------------------------------------------------- +Tue Dec 15 16:46:42 CET 2015 - [email protected] + +- ALSA: hda - Add a fixup for Thinkpad X1 Carbon 2nd (bsc#958439). +- ALSA: hda - Set codec to D3 at reboot/shutdown on Thinkpads + (bsc#958439). +- ALSA: hda - Apply click noise workaround for Thinkpads + generically (bsc#958439). +- commit 7b4772e + +------------------------------------------------------------------- +Tue Dec 15 09:27:40 CET 2015 - [email protected] + +- Linux 4.3.3. +- commit 0baa1c7 + +------------------------------------------------------------------- +Fri Dec 11 09:22:04 CET 2015 - [email protected] + +- Linux 4.3.2 (bsc#954414). +- Delete + patches.fixes/0001-X.509-Fix-the-time-validation-ver-2.patch. +- commit 2aebb11 + +------------------------------------------------------------------- +Wed Dec 9 21:21:19 CET 2015 - [email protected] + +- Linux 4.3.1. +- commit 0e3e409 + +------------------------------------------------------------------- +Wed Dec 9 16:51:24 CET 2015 - [email protected] + +- ALSA: hda - Fix noise problems on Thinkpad T440s (boo#958504). +- commit 6945bb0 + +------------------------------------------------------------------- +Mon Dec 7 11:24:31 CET 2015 - [email protected] + +- Refresh patches.suse/stack-unwind. + Use the fix from master. +- commit d3f999c + +------------------------------------------------------------------- +Sun Dec 6 20:08:55 CET 2015 - [email protected] + +- Refresh patches.suse/stack-unwind. + Add missing put_cpu() in case dwarf unwinder succeeds (bnc#943107) +- commit 60ce178 + +------------------------------------------------------------------- +Mon Nov 30 13:33:34 CET 2015 - [email protected] + +- thinkpad_acpi: Don't yell on unsupported brightness interfaces + (boo#957152). +- commit 0e6e680 + +------------------------------------------------------------------- +Fri Nov 27 20:32:44 CET 2015 - [email protected] + +- drm/i915: Don't override output type for DDI HDMI (boo#955190). +- drm/i915: Don't compare has_drrs strictly in pipe config + (bsc#956397). +- commit bce32fe + +------------------------------------------------------------------- +Thu Nov 26 10:44:19 CET 2015 - [email protected] + +- Delete patches.fixes/bridge-module-get-put.patch. + As discussed in + http://lists.opensuse.org/opensuse-kernel/2015-11/msg00046.html +- commit 91e30a7 + +------------------------------------------------------------------- +Fri Nov 20 21:04:23 CET 2015 - [email protected] + +- Enable pvops Xen for x86_64/vanilla as well + i386/vanilla is left as is for now, because it matches the non-pae + -default kernel which does not support Xen either. +- commit 6a48ac7 + +------------------------------------------------------------------- +Thu Nov 19 07:41:19 CET 2015 - [email protected] + +- ethernet/atheros/alx: add Killer E2400 device ID (boo#955363). +- commit 66773be + +------------------------------------------------------------------- +Wed Nov 18 22:40:44 CET 2015 - [email protected] + +- XEN: Use the PVOPS kernel (fate#315712) + Merge the -pv configs into -default (-pae on i386) and -debug and drop + the -xen flavor and the associated patches.xen series. For a + transitional period, the -xen flavor will be maintained in a separate + branch as a reference. +- commit ff1dcd9 + +------------------------------------------------------------------- +Tue Nov 17 10:14:21 CET 2015 - [email protected] + +- X.509: Fix the time validation [ver #2] (bsc#954414). +- commit 6b3b033 + +------------------------------------------------------------------- +Sun Nov 15 11:45:43 CET 2015 - [email protected] + +- Update config files. + Enable CRASHER on s390x to be the same as in all other configs. +- commit 71162f2 + +------------------------------------------------------------------- +Sun Nov 15 11:40:59 CET 2015 - [email protected] + +- Rename patches.suse/crasher-26.diff to patches.suse/crasher.patch + It is no longer anything for 2.6 :). +- commit d407cb2 + +------------------------------------------------------------------- +Sat Nov 14 23:36:45 CET 2015 - [email protected] + +- Refresh patches.suse/crasher.patch + See the patch to see what the update consists of. +- commit 57989db + +------------------------------------------------------------------- @@ -8,0 +140,7 @@ +Wed Nov 11 13:01:29 CET 2015 - [email protected] + +- Update config files (bsc#951533). + Set CONFIG_SPARSEMEM_VMEMMAP=y for Power +- commit 5a67c8d + +------------------------------------------------------------------- @@ -56,0 +195,7 @@ +Tue Nov 3 16:20:18 CET 2015 - [email protected] + +- group-source-files: mark module.lds as devel file + ld: cannot open linker script file /usr/src/linux-4.2.5-1/arch/arm/kernel/module.lds: No such file or directory +- commit ec6d351 + +------------------------------------------------------------------- @@ -6407,0 +6553,19 @@ + +------------------------------------------------------------------- +Mon Feb 24 18:24:15 CET 2014 - [email protected] + +- Obsolete compat-wireless, rts5229 and rts_pstor KMPs + These are found in SLE11-SP3, now replaced with the upstream drivers. +- commit 37738dd + +------------------------------------------------------------------- +Mon Feb 24 16:10:47 CET 2014 - [email protected] + +- rpm/kernel-binary.spec.in: Do not obsolete ocfs2-kmp (bnc#865259)865259 +- commit c8661b5 + +------------------------------------------------------------------- +Mon Feb 24 14:34:29 CET 2014 - [email protected] + +- rpm/kernel-binary.spec.in: Obsolete the -base package from SLE11 (bnc#865096) +- commit 3f926c3 kernel-default.changes: same change kernel-docs.changes: same change kernel-lpae.changes: same change kernel-obs-build.changes: same change kernel-obs-qa.changes: same change kernel-pae.changes: same change kernel-source.changes: same change kernel-syms.changes: same change kernel-vanilla.changes: same change Old: ---- kernel-ec2.changes kernel-ec2.spec kernel-obs-qa-xen.changes kernel-obs-qa-xen.spec kernel-pv.changes kernel-pv.spec kernel-xen.changes kernel-xen.spec ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kernel-debug.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.3 -%define patchversion 4.3.0 +%define patchversion 4.3.3 %define variant %{nil} %define vanilla_only 0 @@ -28,7 +28,6 @@ %define build_flavor debug %define build_default ("%build_flavor" == "default") -%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2") %define build_vanilla ("%build_flavor" == "vanilla") %define src_install_dir /usr/src/linux-%kernelrelease%variant @@ -58,9 +57,9 @@ Summary: A Debug Version of the Kernel License: GPL-2.0 Group: System/Kernel -Version: 4.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif @@ -82,8 +81,13 @@ Provides: multiversion(kernel) %if %split_base Provides: kernel-base = %version-%source_rel -# Obsolete the -base subpackage from 11.1 and 11.2 development phase -Obsoletes: %name-base <= 2.6.31 +# In SLE11, kernel-$flavor complemented kernel-$flavor-base. With SLE12, +# kernel-$flavor itself contains all the needed files and kernel-$flavor-base +# is a subset that can replace kernel-$flavor in some scenarios. We need to +# obsolete the -base subpackage from SLE11, so that the base files are not +# owned by multiple packages now. The dependency is not correct wrt openSUSE +# 11.2 - 11.4, but we primarily care about the supported upgrade path. +Obsoletes: %name-base < 3.1 %endif Requires(pre): coreutils awk # For /usr/lib/module-init-tools/weak-modules2 @@ -122,9 +126,6 @@ %ifarch %arm BuildRequires: u-boot-tools %endif -%if %build_xen -#!BuildIgnore: xen -%endif Obsoletes: microcode_ctl @@ -317,8 +318,6 @@ %obsolete_kmp perfmon 2_3 %obsolete_kmp iwlagn-2-6-27 1.0_3 %obsolete_kmp msi-wmi 1.0_3 -# sle11 -%obsolete_kmp ocfs2 1.6_4 # 11.1 %obsolete_kmp quickcam 0.6.7 # sle11-sp1 @@ -343,6 +342,9 @@ %obsolete_kmp ath3k 1.0_3 Obsoletes: ath3k-firmware <= 1.0 Provides: ath3k-firmware = 1.0 +%obsolete_kmp compat-wireless 3.12 +%obsolete_kmp rts5229 1.08 +%obsolete_kmp rts_pstor 1.11 # Provide the exported symbols as "ksym(symbol) = hash" %define __find_provides %_sourcedir/find-provides %name @@ -583,9 +585,6 @@ %ifarch %ix86 x86_64 add_vmlinux --compressed image=bzImage -%if %build_xen - test -f arch/x86/boot/$image || image=vmlinuz -%endif cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor image=vmlinuz %endif @@ -676,7 +675,7 @@ done done -%if %build_xen || %build_vanilla +%if %build_vanilla # keep this -suffix list in sync with post.sh and postun.sh suffix=-%build_flavor %endif ++++++ kernel-default.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.3 -%define patchversion 4.3.0 +%define patchversion 4.3.3 %define variant %{nil} %define vanilla_only 0 @@ -28,7 +28,6 @@ %define build_flavor default %define build_default ("%build_flavor" == "default") -%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2") %define build_vanilla ("%build_flavor" == "vanilla") %define src_install_dir /usr/src/linux-%kernelrelease%variant @@ -58,9 +57,9 @@ Summary: The Standard Kernel License: GPL-2.0 Group: System/Kernel -Version: 4.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif @@ -82,8 +81,13 @@ Provides: multiversion(kernel) %if %split_base Provides: kernel-base = %version-%source_rel -# Obsolete the -base subpackage from 11.1 and 11.2 development phase -Obsoletes: %name-base <= 2.6.31 +# In SLE11, kernel-$flavor complemented kernel-$flavor-base. With SLE12, +# kernel-$flavor itself contains all the needed files and kernel-$flavor-base +# is a subset that can replace kernel-$flavor in some scenarios. We need to +# obsolete the -base subpackage from SLE11, so that the base files are not +# owned by multiple packages now. The dependency is not correct wrt openSUSE +# 11.2 - 11.4, but we primarily care about the supported upgrade path. +Obsoletes: %name-base < 3.1 %endif Requires(pre): coreutils awk # For /usr/lib/module-init-tools/weak-modules2 @@ -122,9 +126,6 @@ %ifarch %arm BuildRequires: u-boot-tools %endif -%if %build_xen -#!BuildIgnore: xen -%endif Obsoletes: microcode_ctl @@ -168,6 +169,10 @@ Obsoletes: kernel-bigsmp <= 3.1 Provides: kernel-desktop = 4.3 Obsoletes: kernel-desktop <= 4.3 +Provides: kernel-xen = 4.3 +Obsoletes: kernel-xen <= 4.3 +Provides: kernel-ec2 = 4.3 +Obsoletes: kernel-ec2 <= 4.3 %endif %ifarch %ix86 Provides: kernel-trace-base = 3.13 @@ -188,6 +193,10 @@ Obsoletes: kernel-bigsmp-base <= 3.1 Provides: kernel-desktop-base = 4.3 Obsoletes: kernel-desktop-base <= 4.3 +Provides: kernel-xen-base = 4.3 +Obsoletes: kernel-xen-base <= 4.3 +Provides: kernel-ec2-base = 4.3 +Obsoletes: kernel-ec2-base <= 4.3 %endif %obsolete_rebuilds %name Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%srcversion.tar.xz @@ -353,8 +362,6 @@ %obsolete_kmp perfmon 2_3 %obsolete_kmp iwlagn-2-6-27 1.0_3 %obsolete_kmp msi-wmi 1.0_3 -# sle11 -%obsolete_kmp ocfs2 1.6_4 # 11.1 %obsolete_kmp quickcam 0.6.7 # sle11-sp1 @@ -379,6 +386,9 @@ %obsolete_kmp ath3k 1.0_3 Obsoletes: ath3k-firmware <= 1.0 Provides: ath3k-firmware = 1.0 +%obsolete_kmp compat-wireless 3.12 +%obsolete_kmp rts5229 1.08 +%obsolete_kmp rts_pstor 1.11 # Provide the exported symbols as "ksym(symbol) = hash" %define __find_provides %_sourcedir/find-provides %name @@ -618,9 +628,6 @@ %ifarch %ix86 x86_64 add_vmlinux --compressed image=bzImage -%if %build_xen - test -f arch/x86/boot/$image || image=vmlinuz -%endif cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor image=vmlinuz %endif @@ -711,7 +718,7 @@ done done -%if %build_xen || %build_vanilla +%if %build_vanilla # keep this -suffix list in sync with post.sh and postun.sh suffix=-%build_flavor %endif @@ -1002,6 +1009,10 @@ Obsoletes: kernel-bigsmp-base <= 3.1 Provides: kernel-desktop-base = 4.3 Obsoletes: kernel-desktop-base <= 4.3 +Provides: kernel-xen-base = 4.3 +Obsoletes: kernel-xen-base <= 4.3 +Provides: kernel-ec2-base = 4.3 +Obsoletes: kernel-ec2-base <= 4.3 %endif %obsolete_rebuilds %name-base %ifarch %ix86 @@ -1060,6 +1071,10 @@ Obsoletes: kernel-bigsmp-extra <= 3.1 Provides: kernel-desktop-extra = 4.3 Obsoletes: kernel-desktop-extra <= 4.3 +Provides: kernel-xen-extra = 4.3 +Obsoletes: kernel-xen-extra <= 4.3 +Provides: kernel-ec2-extra = 4.3 +Obsoletes: kernel-ec2-extra <= 4.3 %endif %obsolete_rebuilds %name-extra Supplements: packageand(product(SUSE_SLED):%{name}_%_target_cpu) @@ -1131,6 +1146,10 @@ Obsoletes: kernel-bigsmp-devel <= 3.1 Provides: kernel-desktop-devel = 4.3 Obsoletes: kernel-desktop-devel <= 4.3 +Provides: kernel-xen-devel = 4.3 +Obsoletes: kernel-xen-devel <= 4.3 +Provides: kernel-ec2-devel = 4.3 +Obsoletes: kernel-ec2-devel <= 4.3 %endif %obsolete_rebuilds %name-devel PreReq: coreutils ++++++ kernel-docs.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -16,7 +16,7 @@ # -%define patchversion 4.3.0 +%define patchversion 4.3.3 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -27,9 +27,9 @@ Summary: Kernel Documentation (man pages) License: GPL-2.0 Group: Documentation/Man -Version: 4.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif ++++++ kernel-lpae.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.3 -%define patchversion 4.3.0 +%define patchversion 4.3.3 %define variant %{nil} %define vanilla_only 0 @@ -28,7 +28,6 @@ %define build_flavor lpae %define build_default ("%build_flavor" == "default") -%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2") %define build_vanilla ("%build_flavor" == "vanilla") %define src_install_dir /usr/src/linux-%kernelrelease%variant @@ -58,9 +57,9 @@ Summary: Kernel for LPAE enabled systems License: GPL-2.0 Group: System/Kernel -Version: 4.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif @@ -82,8 +81,13 @@ Provides: multiversion(kernel) %if %split_base Provides: kernel-base = %version-%source_rel -# Obsolete the -base subpackage from 11.1 and 11.2 development phase -Obsoletes: %name-base <= 2.6.31 +# In SLE11, kernel-$flavor complemented kernel-$flavor-base. With SLE12, +# kernel-$flavor itself contains all the needed files and kernel-$flavor-base +# is a subset that can replace kernel-$flavor in some scenarios. We need to +# obsolete the -base subpackage from SLE11, so that the base files are not +# owned by multiple packages now. The dependency is not correct wrt openSUSE +# 11.2 - 11.4, but we primarily care about the supported upgrade path. +Obsoletes: %name-base < 3.1 %endif Requires(pre): coreutils awk # For /usr/lib/module-init-tools/weak-modules2 @@ -122,9 +126,6 @@ %ifarch %arm BuildRequires: u-boot-tools %endif -%if %build_xen -#!BuildIgnore: xen -%endif Obsoletes: microcode_ctl @@ -311,8 +312,6 @@ %obsolete_kmp perfmon 2_3 %obsolete_kmp iwlagn-2-6-27 1.0_3 %obsolete_kmp msi-wmi 1.0_3 -# sle11 -%obsolete_kmp ocfs2 1.6_4 # 11.1 %obsolete_kmp quickcam 0.6.7 # sle11-sp1 @@ -337,6 +336,9 @@ %obsolete_kmp ath3k 1.0_3 Obsoletes: ath3k-firmware <= 1.0 Provides: ath3k-firmware = 1.0 +%obsolete_kmp compat-wireless 3.12 +%obsolete_kmp rts5229 1.08 +%obsolete_kmp rts_pstor 1.11 # Provide the exported symbols as "ksym(symbol) = hash" %define __find_provides %_sourcedir/find-provides %name @@ -577,9 +579,6 @@ %ifarch %ix86 x86_64 add_vmlinux --compressed image=bzImage -%if %build_xen - test -f arch/x86/boot/$image || image=vmlinuz -%endif cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor image=vmlinuz %endif @@ -670,7 +669,7 @@ done done -%if %build_xen || %build_vanilla +%if %build_vanilla # keep this -suffix list in sync with post.sh and postun.sh suffix=-%build_flavor %endif ++++++ kernel-obs-build.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -19,7 +19,7 @@ #!BuildIgnore: post-build-checks -%define patchversion 4.3.0 +%define patchversion 4.3.3 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -30,9 +30,6 @@ BuildRequires: util-linux BuildRequires: kernel-default -%ifarch %ix86 x86_64 -BuildRequires: kernel-xen -%endif ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64 ppc64le s390x x86_64 %if 0%{?suse_version} < 1315 # For SLE 11 @@ -45,9 +42,9 @@ Summary: package kernel and initrd for OBS VM builds License: GPL-2.0 Group: SLES -Version: 4.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif @@ -122,16 +119,8 @@ /sbin/mkinitrd $ROOT \ -m "$KERNEL_MODULES" \ -k /boot/%{kernel_name}-*-default -M /boot/System.map-*-default -i /tmp/initrd.kvm -B -%ifarch %ix86 x86_64 -/sbin/mkinitrd $ROOT \ - -m "$KERNEL_MODULES" \ - -k /boot/vmlinuz-xen -M /boot/System.map-*-xen -i /tmp/initrd.xen -%endif %else dracut --host-only --drivers="$KERNEL_MODULES" --force /tmp/initrd.kvm `echo /boot/%{kernel_name}-*-default | sed -n -e 's,[^-]*-\(.*-default\),\1,p'` -%ifarch %ix86 x86_64 -dracut --host-only --drivers="$KERNEL_MODULES xenblk" --force /tmp/initrd.xen `echo /boot/%{kernel_name}-*-xen | sed -n -e 's,[^-]*-\(.*-xen\),\1,p'` -%endif %endif @@ -142,10 +131,6 @@ install -d -m 0755 $RPM_BUILD_ROOT cp -v /boot/%{kernel_name}-*-default $RPM_BUILD_ROOT/.build.kernel.kvm cp -v /tmp/initrd.kvm $RPM_BUILD_ROOT/.build.initrd.kvm -%ifarch %ix86 x86_64 -cp -v /boot/%{kernel_name}-*-xen $RPM_BUILD_ROOT/.build.kernel.xen -cp -v /tmp/initrd.xen $RPM_BUILD_ROOT/.build.initrd.xen -%endif #inform worker about arch #see obs-build commit e47399d738e51 ++++++ kernel-obs-qa.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -17,7 +17,7 @@ # needsrootforbuild -%define patchversion 4.3.0 +%define patchversion 4.3.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.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif ++++++ kernel-pae.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.3 -%define patchversion 4.3.0 +%define patchversion 4.3.3 %define variant %{nil} %define vanilla_only 0 @@ -28,7 +28,6 @@ %define build_flavor pae %define build_default ("%build_flavor" == "default") -%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2") %define build_vanilla ("%build_flavor" == "vanilla") %define src_install_dir /usr/src/linux-%kernelrelease%variant @@ -58,9 +57,9 @@ Summary: Kernel with PAE Support License: GPL-2.0 Group: System/Kernel -Version: 4.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif @@ -82,8 +81,13 @@ Provides: multiversion(kernel) %if %split_base Provides: kernel-base = %version-%source_rel -# Obsolete the -base subpackage from 11.1 and 11.2 development phase -Obsoletes: %name-base <= 2.6.31 +# In SLE11, kernel-$flavor complemented kernel-$flavor-base. With SLE12, +# kernel-$flavor itself contains all the needed files and kernel-$flavor-base +# is a subset that can replace kernel-$flavor in some scenarios. We need to +# obsolete the -base subpackage from SLE11, so that the base files are not +# owned by multiple packages now. The dependency is not correct wrt openSUSE +# 11.2 - 11.4, but we primarily care about the supported upgrade path. +Obsoletes: %name-base < 3.1 %endif Requires(pre): coreutils awk # For /usr/lib/module-init-tools/weak-modules2 @@ -122,9 +126,6 @@ %ifarch %arm BuildRequires: u-boot-tools %endif -%if %build_xen -#!BuildIgnore: xen -%endif Obsoletes: microcode_ctl @@ -152,12 +153,20 @@ Obsoletes: kernel-vmi <= 2.6.38 Provides: kernel-desktop = 4.3 Obsoletes: kernel-desktop <= 4.3 +Provides: kernel-xen = 4.3 +Obsoletes: kernel-xen <= 4.3 +Provides: kernel-ec2 = 4.3 +Obsoletes: kernel-ec2 <= 4.3 %endif %ifarch %ix86 Provides: kernel-vmi-base = 2.6.38 Obsoletes: kernel-vmi-base <= 2.6.38 Provides: kernel-desktop-base = 4.3 Obsoletes: kernel-desktop-base <= 4.3 +Provides: kernel-xen-base = 4.3 +Obsoletes: kernel-xen-base <= 4.3 +Provides: kernel-ec2-base = 4.3 +Obsoletes: kernel-ec2-base <= 4.3 %endif %obsolete_rebuilds %name Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%srcversion.tar.xz @@ -323,8 +332,6 @@ %obsolete_kmp perfmon 2_3 %obsolete_kmp iwlagn-2-6-27 1.0_3 %obsolete_kmp msi-wmi 1.0_3 -# sle11 -%obsolete_kmp ocfs2 1.6_4 # 11.1 %obsolete_kmp quickcam 0.6.7 # sle11-sp1 @@ -349,6 +356,9 @@ %obsolete_kmp ath3k 1.0_3 Obsoletes: ath3k-firmware <= 1.0 Provides: ath3k-firmware = 1.0 +%obsolete_kmp compat-wireless 3.12 +%obsolete_kmp rts5229 1.08 +%obsolete_kmp rts_pstor 1.11 # Provide the exported symbols as "ksym(symbol) = hash" %define __find_provides %_sourcedir/find-provides %name @@ -595,9 +605,6 @@ %ifarch %ix86 x86_64 add_vmlinux --compressed image=bzImage -%if %build_xen - test -f arch/x86/boot/$image || image=vmlinuz -%endif cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor image=vmlinuz %endif @@ -688,7 +695,7 @@ done done -%if %build_xen || %build_vanilla +%if %build_vanilla # keep this -suffix list in sync with post.sh and postun.sh suffix=-%build_flavor %endif @@ -965,6 +972,10 @@ Obsoletes: kernel-vmi-base <= 2.6.38 Provides: kernel-desktop-base = 4.3 Obsoletes: kernel-desktop-base <= 4.3 +Provides: kernel-xen-base = 4.3 +Obsoletes: kernel-xen-base <= 4.3 +Provides: kernel-ec2-base = 4.3 +Obsoletes: kernel-ec2-base <= 4.3 %endif %obsolete_rebuilds %name-base %ifarch %ix86 @@ -1016,6 +1027,10 @@ Obsoletes: kernel-vmi-extra <= 2.6.38 Provides: kernel-desktop-extra = 4.3 Obsoletes: kernel-desktop-extra <= 4.3 +Provides: kernel-xen-extra = 4.3 +Obsoletes: kernel-xen-extra <= 4.3 +Provides: kernel-ec2-extra = 4.3 +Obsoletes: kernel-ec2-extra <= 4.3 %endif %obsolete_rebuilds %name-extra Supplements: packageand(product(SUSE_SLED):%{name}_%_target_cpu) @@ -1080,6 +1095,10 @@ Obsoletes: kernel-vmi-devel <= 2.6.38 Provides: kernel-desktop-devel = 4.3 Obsoletes: kernel-desktop-devel <= 4.3 +Provides: kernel-xen-devel = 4.3 +Obsoletes: kernel-xen-devel <= 4.3 +Provides: kernel-ec2-devel = 4.3 +Obsoletes: kernel-ec2-devel <= 4.3 %endif %obsolete_rebuilds %name-devel PreReq: coreutils ++++++ kernel-source.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -18,7 +18,7 @@ %define srcversion 4.3 -%define patchversion 4.3.0 +%define patchversion 4.3.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.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif ++++++ kernel-syms.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -24,10 +24,10 @@ Summary: Kernel Symbol Versions (modversions) License: GPL-2.0 Group: Development/Sources -Version: 4.3.0 +Version: 4.3.3 %if %using_buildservice %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif @@ -47,12 +47,6 @@ %ifarch %ix86 Requires: kernel-pae-devel = %version-%source_rel %endif -%ifarch %ix86 x86_64 -Requires: kernel-pv-devel = %version-%source_rel -%endif -%ifarch %ix86 x86_64 -Requires: kernel-xen-devel = %version-%source_rel -%endif Requires: pesign-obs-integration Provides: %name = %version-%source_rel Provides: multiversion(kernel) ++++++ kernel-vanilla.spec ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -20,7 +20,7 @@ # needssslcertforbuild %define srcversion 4.3 -%define patchversion 4.3.0 +%define patchversion 4.3.3 %define variant %{nil} %define vanilla_only 0 @@ -28,7 +28,6 @@ %define build_flavor vanilla %define build_default ("%build_flavor" == "default") -%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2") %define build_vanilla ("%build_flavor" == "vanilla") %define src_install_dir /usr/src/linux-%kernelrelease%variant @@ -58,9 +57,9 @@ Summary: The Standard Kernel - without any SUSE patches License: GPL-2.0 Group: System/Kernel -Version: 4.3.0 +Version: 4.3.3 %if 0%{?is_kotd} -Release: <RELEASE>.g734b32c +Release: <RELEASE>.gdb72752 %else Release: 0 %endif @@ -82,8 +81,13 @@ Provides: multiversion(kernel) %if %split_base Provides: kernel-base = %version-%source_rel -# Obsolete the -base subpackage from 11.1 and 11.2 development phase -Obsoletes: %name-base <= 2.6.31 +# In SLE11, kernel-$flavor complemented kernel-$flavor-base. With SLE12, +# kernel-$flavor itself contains all the needed files and kernel-$flavor-base +# is a subset that can replace kernel-$flavor in some scenarios. We need to +# obsolete the -base subpackage from SLE11, so that the base files are not +# owned by multiple packages now. The dependency is not correct wrt openSUSE +# 11.2 - 11.4, but we primarily care about the supported upgrade path. +Obsoletes: %name-base < 3.1 %endif Requires(pre): coreutils awk # For /usr/lib/module-init-tools/weak-modules2 @@ -122,9 +126,6 @@ %ifarch %arm BuildRequires: u-boot-tools %endif -%if %build_xen -#!BuildIgnore: xen -%endif Obsoletes: microcode_ctl @@ -311,8 +312,6 @@ %obsolete_kmp perfmon 2_3 %obsolete_kmp iwlagn-2-6-27 1.0_3 %obsolete_kmp msi-wmi 1.0_3 -# sle11 -%obsolete_kmp ocfs2 1.6_4 # 11.1 %obsolete_kmp quickcam 0.6.7 # sle11-sp1 @@ -337,6 +336,9 @@ %obsolete_kmp ath3k 1.0_3 Obsoletes: ath3k-firmware <= 1.0 Provides: ath3k-firmware = 1.0 +%obsolete_kmp compat-wireless 3.12 +%obsolete_kmp rts5229 1.08 +%obsolete_kmp rts_pstor 1.11 # Provide the exported symbols as "ksym(symbol) = hash" %define __find_provides %_sourcedir/find-provides %name @@ -576,9 +578,6 @@ %ifarch %ix86 x86_64 add_vmlinux --compressed image=bzImage -%if %build_xen - test -f arch/x86/boot/$image || image=vmlinuz -%endif cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor image=vmlinuz %endif @@ -669,7 +668,7 @@ done done -%if %build_xen || %build_vanilla +%if %build_vanilla # keep this -suffix list in sync with post.sh and postun.sh suffix=-%build_flavor %endif ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -11,12 +11,9 @@ <arch>x86_64</arch> <package>kernel-debug</package> <package>kernel-default</package> -<package>kernel-ec2</package> <package>kernel-lpae</package> <package>kernel-pae</package> -<package>kernel-pv</package> <package>kernel-vanilla</package> -<package>kernel-xen</package> </conditions> <hardware> <processors>8</processors> @@ -33,12 +30,9 @@ <arch>ppc64le</arch> <package>kernel-debug</package> <package>kernel-default</package> -<package>kernel-ec2</package> <package>kernel-lpae</package> <package>kernel-pae</package> -<package>kernel-pv</package> <package>kernel-vanilla</package> -<package>kernel-xen</package> </conditions> <hardware> <processors>4</processors> ++++++ config.conf ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:53.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:53.000000000 +0100 @@ -10,16 +10,10 @@ +i386 i386/default +i386 i386/pae -+i386 i386/xen -+i386 -syms i386/ec2 -+i386 i386/pv +i386 -syms i386/debug +i386 i386/vanilla +x86_64 x86_64/default -+x86_64 x86_64/xen -+x86_64 -syms x86_64/ec2 -+x86_64 x86_64/pv +x86_64 -syms x86_64/debug +x86_64 x86_64/vanilla ++++++ config.tar.bz2 ++++++ ++++ 35686 lines of diff (skipped) ++++++ group-source-files.pl ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:54.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:54.000000000 +0100 @@ -36,6 +36,7 @@ m{^\Q$loc\E.*/Makefile} || m{^\Q$loc\E/arch/[^/]+/boot/dts/include/dt-bindings\b} || m{^\Q$loc\E/arch/[^/]+/include\b} || + m{^\Q$loc\E/arch/.*/module\.lds\b} || m{^\Q$loc\E/arch/arm/[^/]+/include/mach\b} || m{^\Q$loc\E/arch/arm/[^/]+/include/plat\b} || m{^\Q$loc\E/include/[^/]+\b} || ++++++ kernel-binary.spec.in ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:54.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:54.000000000 +0100 @@ -28,7 +28,6 @@ %define build_flavor @FLAVOR@ %define build_default ("%build_flavor" == "default") -%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2") %define build_vanilla ("%build_flavor" == "vanilla") %define src_install_dir /usr/src/linux-%kernelrelease%variant @@ -82,8 +81,13 @@ Provides: multiversion(kernel) %if %split_base Provides: kernel-base = %version-%source_rel -# Obsolete the -base subpackage from 11.1 and 11.2 development phase -Obsoletes: %name-base <= 2.6.31 +# In SLE11, kernel-$flavor complemented kernel-$flavor-base. With SLE12, +# kernel-$flavor itself contains all the needed files and kernel-$flavor-base +# is a subset that can replace kernel-$flavor in some scenarios. We need to +# obsolete the -base subpackage from SLE11, so that the base files are not +# owned by multiple packages now. The dependency is not correct wrt openSUSE +# 11.2 - 11.4, but we primarily care about the supported upgrade path. +Obsoletes: %name-base < 3.1 %endif Requires(pre): coreutils awk # For /usr/lib/module-init-tools/weak-modules2 @@ -122,9 +126,6 @@ %ifarch %arm BuildRequires: u-boot-tools %endif -%if %build_xen -#!BuildIgnore: xen -%endif Obsoletes: microcode_ctl @@ -187,8 +188,6 @@ %obsolete_kmp perfmon 2_3 %obsolete_kmp iwlagn-2-6-27 1.0_3 %obsolete_kmp msi-wmi 1.0_3 -# sle11 -%obsolete_kmp ocfs2 1.6_4 # 11.1 %obsolete_kmp quickcam 0.6.7 # sle11-sp1 @@ -213,6 +212,9 @@ %obsolete_kmp ath3k 1.0_3 Obsoletes: ath3k-firmware <= 1.0 Provides: ath3k-firmware = 1.0 +%obsolete_kmp compat-wireless 3.12 +%obsolete_kmp rts5229 1.08 +%obsolete_kmp rts_pstor 1.11 # Provide the exported symbols as "ksym(symbol) = hash" %define __find_provides %_sourcedir/find-provides %name @@ -452,9 +454,6 @@ %ifarch %ix86 x86_64 add_vmlinux --compressed image=bzImage -%if %build_xen - test -f arch/x86/boot/$image || image=vmlinuz -%endif cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor image=vmlinuz %endif @@ -545,7 +544,7 @@ done done -%if %build_xen || %build_vanilla +%if %build_vanilla # keep this -suffix list in sync with post.sh and postun.sh suffix=-%build_flavor %endif ++++++ kernel-module-subpackage ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:54.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:54.000000000 +0100 @@ -34,6 +34,9 @@ %ifarch x86_64 Obsoletes: %{-n*}-desktop %endif +%ifarch %ix86 x86_64 +Obsoletes: %{-n*}-xen +%endif %endif %if %1 == "pae" Obsoletes: %{-n*}-desktop ++++++ kernel-obs-build.spec.in ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:54.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:54.000000000 +0100 @@ -30,9 +30,6 @@ BuildRequires: util-linux BuildRequires: kernel-default -%ifarch %ix86 x86_64 -BuildRequires: kernel-xen -%endif ExclusiveArch: @ARCHS@ %if 0%{?suse_version} < 1315 # For SLE 11 @@ -122,16 +119,8 @@ /sbin/mkinitrd $ROOT \ -m "$KERNEL_MODULES" \ -k /boot/%{kernel_name}-*-default -M /boot/System.map-*-default -i /tmp/initrd.kvm -B -%ifarch %ix86 x86_64 -/sbin/mkinitrd $ROOT \ - -m "$KERNEL_MODULES" \ - -k /boot/vmlinuz-xen -M /boot/System.map-*-xen -i /tmp/initrd.xen -%endif %else dracut --host-only --drivers="$KERNEL_MODULES" --force /tmp/initrd.kvm `echo /boot/%{kernel_name}-*-default | sed -n -e 's,[^-]*-\(.*-default\),\1,p'` -%ifarch %ix86 x86_64 -dracut --host-only --drivers="$KERNEL_MODULES xenblk" --force /tmp/initrd.xen `echo /boot/%{kernel_name}-*-xen | sed -n -e 's,[^-]*-\(.*-xen\),\1,p'` -%endif %endif @@ -142,10 +131,6 @@ install -d -m 0755 $RPM_BUILD_ROOT cp -v /boot/%{kernel_name}-*-default $RPM_BUILD_ROOT/.build.kernel.kvm cp -v /tmp/initrd.kvm $RPM_BUILD_ROOT/.build.initrd.kvm -%ifarch %ix86 x86_64 -cp -v /boot/%{kernel_name}-*-xen $RPM_BUILD_ROOT/.build.kernel.xen -cp -v /tmp/initrd.xen $RPM_BUILD_ROOT/.build.initrd.xen -%endif #inform worker about arch #see obs-build commit e47399d738e51 ++++++ old-flavors ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:54.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:54.000000000 +0100 @@ -38,3 +38,8 @@ # openSUSE 13.2 / Tumbleweed until 2015-10-01 i386/pae desktop 4.3 x86_64/default desktop 4.3 + +i386/pae xen 4.3 +i386/pae ec2 4.3 +x86_64/default xen 4.3 +x86_64/default ec2 4.3 ++++++ patches.drivers.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/ALSA-hda-Add-a-fixup-for-Thinkpad-X1-Carbon-2nd new/patches.drivers/ALSA-hda-Add-a-fixup-for-Thinkpad-X1-Carbon-2nd --- old/patches.drivers/ALSA-hda-Add-a-fixup-for-Thinkpad-X1-Carbon-2nd 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/ALSA-hda-Add-a-fixup-for-Thinkpad-X1-Carbon-2nd 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,32 @@ +From b6903c0ed9f0bcbbe88f67f7ed43d1721cbc6235 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <[email protected]> +Date: Thu, 10 Dec 2015 12:20:20 +0100 +Subject: [PATCH 3/3] ALSA: hda - Add a fixup for Thinkpad X1 Carbon 2nd +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: b6903c0ed9f0bcbbe88f67f7ed43d1721cbc6235 +Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git +References: bsc#958439 + +Apply the same fixup for Thinkpad with dock to Thinkpad X1 Carbon 2nd, +too. This reduces the annoying loud cracking noise problem, as well +as the support of missing docking port. + +Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=958439 +Reported-and-tested-by: Benjamin Poirier <[email protected]> +Cc: <[email protected]> +Signed-off-by: Takashi Iwai <[email protected]> + +--- + sound/pci/hda/patch_realtek.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -5335,6 +5335,7 @@ static const struct snd_pci_quirk alc269 + SND_PCI_QUIRK(0x17aa, 0x2212, "Thinkpad T440", ALC292_FIXUP_TPT440_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2214, "Thinkpad X240", ALC292_FIXUP_TPT440_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2215, "Thinkpad", ALC269_FIXUP_LIMIT_INT_MIC_BOOST), ++ SND_PCI_QUIRK(0x17aa, 0x2218, "Thinkpad X1 Carbon 2nd", ALC292_FIXUP_TPT440_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2223, "ThinkPad T550", ALC292_FIXUP_TPT440_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2226, "ThinkPad X250", ALC292_FIXUP_TPT440_DOCK), + SND_PCI_QUIRK(0x17aa, 0x3977, "IdeaPad S210", ALC283_FIXUP_INT_MIC), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/ALSA-hda-Apply-click-noise-workaround-for-Thinkpads new/patches.drivers/ALSA-hda-Apply-click-noise-workaround-for-Thinkpads --- old/patches.drivers/ALSA-hda-Apply-click-noise-workaround-for-Thinkpads 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/ALSA-hda-Apply-click-noise-workaround-for-Thinkpads 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,62 @@ +From 157f0b7f6c0cc0bc88647390006e959e267a0143 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <[email protected]> +Date: Thu, 10 Dec 2015 23:30:43 +0100 +Subject: [PATCH 1/3] ALSA: hda - Apply click noise workaround for Thinkpads generically +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: 157f0b7f6c0cc0bc88647390006e959e267a0143 +Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git +References: bsc#958439 + +It seems that a workaround for Thinkpad T440s crackling noise can be +applied generically to all Thinkpad models: namely, disabling the +default alc269 shutup callback. This patch moves it to the existing +alc_fixup_tpt440_dock() while also replacing the rest code with +another existing alc_fixup_disable_aamix(). It resulted in a good +code reduction. + +Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=958439 +Reported-and-tested-by: Benjamin Poirier <[email protected]> +Cc: <[email protected]> +Signed-off-by: Takashi Iwai <[email protected]> + +--- + sound/pci/hda/patch_realtek.c | 15 ++------------- + 1 file changed, 2 insertions(+), 13 deletions(-) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -4198,24 +4198,13 @@ static void alc_fixup_tpt440_dock(struct + struct alc_spec *spec = codec->spec; + + if (action == HDA_FIXUP_ACT_PRE_PROBE) { ++ spec->shutup = alc_no_shutup; /* reduce click noise */ + spec->parse_flags = HDA_PINCFG_NO_HP_FIXUP; + codec->power_save_node = 0; /* avoid click noises */ + snd_hda_apply_pincfgs(codec, pincfgs); + } + } + +-/* additional fixup for Thinkpad T440s noise problem */ +-static void alc_fixup_tpt440(struct hda_codec *codec, +- const struct hda_fixup *fix, int action) +-{ +- struct alc_spec *spec = codec->spec; +- +- if (action == HDA_FIXUP_ACT_PRE_PROBE) { +- spec->shutup = alc_no_shutup; /* reduce click noise */ +- spec->gen.mixer_nid = 0; /* reduce background noise */ +- } +-} +- + static void alc_shutup_dell_xps13(struct hda_codec *codec) + { + struct alc_spec *spec = codec->spec; +@@ -5066,7 +5055,7 @@ static const struct hda_fixup alc269_fix + }, + [ALC292_FIXUP_TPT440] = { + .type = HDA_FIXUP_FUNC, +- .v.func = alc_fixup_tpt440, ++ .v.func = alc_fixup_disable_aamix, + .chained = true, + .chain_id = ALC292_FIXUP_TPT440_DOCK, + }, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/ALSA-hda-Fix-noise-problems-on-Thinkpad-T440s new/patches.drivers/ALSA-hda-Fix-noise-problems-on-Thinkpad-T440s --- old/patches.drivers/ALSA-hda-Fix-noise-problems-on-Thinkpad-T440s 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/ALSA-hda-Fix-noise-problems-on-Thinkpad-T440s 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,95 @@ +From 9a811230481243f384b8036c6a558bfdbd961f78 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <[email protected]> +Date: Wed, 9 Dec 2015 15:17:43 +0100 +Subject: [PATCH] ALSA: hda - Fix noise problems on Thinkpad T440s +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: 9a811230481243f384b8036c6a558bfdbd961f78 +Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git +References: boo#958504 + +Lenovo Thinkpad T440s suffers from constant background noises, and it +seems to be a generic hardware issue on this model: + https://forums.lenovo.com/t5/ThinkPad-T400-T500-and-newer-T/T440s-speaker-noise/td-p/1339883 + +As the noise comes from the analog loopback path, disabling the path +is the easy workaround. + +Also, the machine gives significant cracking noises at PM suspend. A +workaround found by trial-and-error is to disable the shutup callback +currently used for ALC269-variant. + +This patch addresses these noise issues by introducing a new fixup +chain. Although the same workaround might be applicable to other +Thinkpad models, it's applied only to T440s (17aa:220c) in this patch, +so far, just to be safe (you chicken!). As a compromise, a new model +option string "tp440" is provided now, though, so that owners of other +Thinkpad models can test it more easily. + +Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=958504 +Reported-and-tested-by: Tim Hardeck <[email protected]> +Cc: <[email protected]> +Signed-off-by: Takashi Iwai <[email protected]> + +--- + sound/pci/hda/patch_realtek.c | 22 +++++++++++++++++++++- + 1 file changed, 21 insertions(+), 1 deletion(-) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -4206,6 +4206,18 @@ static void alc_fixup_tpt440_dock(struct + } + } + ++/* additional fixup for Thinkpad T440s noise problem */ ++static void alc_fixup_tpt440(struct hda_codec *codec, ++ const struct hda_fixup *fix, int action) ++{ ++ struct alc_spec *spec = codec->spec; ++ ++ if (action == HDA_FIXUP_ACT_PRE_PROBE) { ++ spec->shutup = alc_no_shutup; /* reduce click noise */ ++ spec->gen.mixer_nid = 0; /* reduce background noise */ ++ } ++} ++ + static void alc_shutup_dell_xps13(struct hda_codec *codec) + { + struct alc_spec *spec = codec->spec; +@@ -4580,6 +4592,7 @@ enum { + ALC255_FIXUP_HEADSET_MODE_NO_HP_MIC, + ALC293_FIXUP_DELL1_MIC_NO_PRESENCE, + ALC292_FIXUP_TPT440_DOCK, ++ ALC292_FIXUP_TPT440, + ALC283_FIXUP_BXBT2807_MIC, + ALC255_FIXUP_DELL_WMI_MIC_MUTE_LED, + ALC282_FIXUP_ASPIRE_V5_PINS, +@@ -5050,6 +5063,12 @@ static const struct hda_fixup alc269_fix + .chained = true, + .chain_id = ALC269_FIXUP_LIMIT_INT_MIC_BOOST + }, ++ [ALC292_FIXUP_TPT440] = { ++ .type = HDA_FIXUP_FUNC, ++ .v.func = alc_fixup_tpt440, ++ .chained = true, ++ .chain_id = ALC292_FIXUP_TPT440_DOCK, ++ }, + [ALC283_FIXUP_BXBT2807_MIC] = { + .type = HDA_FIXUP_PINS, + .v.pins = (const struct hda_pintbl[]) { +@@ -5299,7 +5318,7 @@ static const struct snd_pci_quirk alc269 + SND_PCI_QUIRK(0x17aa, 0x21fb, "Thinkpad T430s", ALC269_FIXUP_LENOVO_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2203, "Thinkpad X230 Tablet", ALC269_FIXUP_LENOVO_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2208, "Thinkpad T431s", ALC269_FIXUP_LENOVO_DOCK), +- SND_PCI_QUIRK(0x17aa, 0x220c, "Thinkpad T440s", ALC292_FIXUP_TPT440_DOCK), ++ SND_PCI_QUIRK(0x17aa, 0x220c, "Thinkpad T440s", ALC292_FIXUP_TPT440), + SND_PCI_QUIRK(0x17aa, 0x220e, "Thinkpad T440p", ALC292_FIXUP_TPT440_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2210, "Thinkpad T540p", ALC292_FIXUP_TPT440_DOCK), + SND_PCI_QUIRK(0x17aa, 0x2211, "Thinkpad W541", ALC292_FIXUP_TPT440_DOCK), +@@ -5397,6 +5416,7 @@ static const struct hda_model_fixup alc2 + {.id = ALC283_FIXUP_CHROME_BOOK, .name = "alc283-dac-wcaps"}, + {.id = ALC283_FIXUP_SENSE_COMBO_JACK, .name = "alc283-sense-combo"}, + {.id = ALC292_FIXUP_TPT440_DOCK, .name = "tpt440-dock"}, ++ {.id = ALC292_FIXUP_TPT440, .name = "tpt440"}, + {} + }; + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/ALSA-hda-Set-codec-to-D3-at-reboot-shutdown-on-Think new/patches.drivers/ALSA-hda-Set-codec-to-D3-at-reboot-shutdown-on-Think --- old/patches.drivers/ALSA-hda-Set-codec-to-D3-at-reboot-shutdown-on-Think 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/ALSA-hda-Set-codec-to-D3-at-reboot-shutdown-on-Think 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,84 @@ +From 70a0976b0c0d90f4246d7e63359d796ec82b87d6 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <[email protected]> +Date: Tue, 15 Dec 2015 14:59:58 +0100 +Subject: [PATCH 2/3] ALSA: hda - Set codec to D3 at reboot/shutdown on Thinkpads +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: 70a0976b0c0d90f4246d7e63359d796ec82b87d6 +Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git +References: bsc#958439 + +Lenovo Thinkpads with Realtek codecs may still have some loud +crackling noises at reboot/shutdown even though a few previous fixes +have been applied. It's because the previous fix (disabling the +default shutup callback) takes effect only at transition of the codec +power state. Meanwhile, at reboot or shutdown, we don't take down the +codec power as default, thus it triggers the same problem unless the +codec is powered down casually by runtime PM. + +This patch tries to address the issue. It gives two things: +- implement the separate reboot_notify hook to struct alc_spec, and + call it optionally if defined. +- turn off the codec to D3 for Thinkpad models via this new callback + +Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=958439 +Reported-and-tested-by: Benjamin Poirier <[email protected]> +Cc: <[email protected]> +Signed-off-by: Takashi Iwai <[email protected]> + +--- + sound/pci/hda/patch_realtek.c | 23 ++++++++++++++++++++++- + 1 file changed, 22 insertions(+), 1 deletion(-) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -111,6 +111,7 @@ struct alc_spec { + void (*power_hook)(struct hda_codec *codec); + #endif + void (*shutup)(struct hda_codec *codec); ++ void (*reboot_notify)(struct hda_codec *codec); + + int init_amp; + int codec_variant; /* flag for other variants */ +@@ -773,6 +774,25 @@ static inline void alc_shutup(struct hda + snd_hda_shutup_pins(codec); + } + ++static void alc_reboot_notify(struct hda_codec *codec) ++{ ++ struct alc_spec *spec = codec->spec; ++ ++ if (spec && spec->reboot_notify) ++ spec->reboot_notify(codec); ++ else ++ alc_shutup(codec); ++} ++ ++/* power down codec to D3 at reboot/shutdown; set as reboot_notify ops */ ++static void alc_d3_at_reboot(struct hda_codec *codec) ++{ ++ snd_hda_codec_set_power_to_all(codec, codec->core.afg, AC_PWRST_D3); ++ snd_hda_codec_write(codec, codec->core.afg, 0, ++ AC_VERB_SET_POWER_STATE, AC_PWRST_D3); ++ msleep(10); ++} ++ + #define alc_free snd_hda_gen_free + + #ifdef CONFIG_PM +@@ -818,7 +838,7 @@ static const struct hda_codec_ops alc_pa + .suspend = alc_suspend, + .check_power_status = snd_hda_gen_check_power_status, + #endif +- .reboot_notify = alc_shutup, ++ .reboot_notify = alc_reboot_notify, + }; + + +@@ -4199,6 +4219,7 @@ static void alc_fixup_tpt440_dock(struct + + if (action == HDA_FIXUP_ACT_PRE_PROBE) { + spec->shutup = alc_no_shutup; /* reduce click noise */ ++ spec->reboot_notify = alc_d3_at_reboot; /* reduce noise */ + spec->parse_flags = HDA_PINCFG_NO_HP_FIXUP; + codec->power_save_node = 0; /* avoid click noises */ + snd_hda_apply_pincfgs(codec, pincfgs); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/drm-i915-Do-a-better-job-at-disabling-primary-plane new/patches.drivers/drm-i915-Do-a-better-job-at-disabling-primary-plane --- old/patches.drivers/drm-i915-Do-a-better-job-at-disabling-primary-plane 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/drm-i915-Do-a-better-job-at-disabling-primary-plane 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,60 @@ +From 634b3a4a476e96816d5d6cd5bb9f8900a53f56ba Mon Sep 17 00:00:00 2001 +From: Maarten Lankhorst <[email protected]> +Date: Mon, 23 Nov 2015 10:25:28 +0100 +Subject: [PATCH] drm/i915: Do a better job at disabling primary plane in the noatomic case. +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: 634b3a4a476e96816d5d6cd5bb9f8900a53f56ba +Git-repo: linux-next +References: bnc#954137 + +When disable_noatomic is called plane_mask is not correct yet, and +plane_state->visible = true is left as true after disabling the primary +plane. + +Other planes are already disabled as part of crtc sanitization, only the +primary is left active. But the plane_mask is not updated here. It gets +updated during fb takeover in modeset_gem_init, or set to the new value +on resume. + +This means that to disable the primary plane 1 << drm_plane_index(primary) +needs to be used. + +Afterwards because the crtc is no longer active it's forbidden to keep +plane_state->visible set, or a WARN_ON in +intel_plane_atomic_calc_changes triggers. There are other code points +that rely on accurate plane_state->visible too, so make sure the bool is +cleared. + +The other planes are already disabled in intel_sanitize_crtc, so they +don't have to be handled here. + +Cc: [email protected] #v4.3, v4.2? +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92655 +Tested-by: Tomas Mezzadra <[email protected]> +Signed-off-by: Maarten Lankhorst <[email protected]> +Reviewed-by: Daniel Vetter <[email protected]> +Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] +(cherry picked from commit 54a4196188eab82e6f0a5f05716626e9f18b8fb6) + +Signed-off-by: Jani Nikula <[email protected]> +Acked-by: Takashi Iwai <[email protected]> + +--- + drivers/gpu/drm/i915/intel_display.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -6225,9 +6225,11 @@ static void intel_crtc_disable_noatomic( + if (to_intel_plane_state(crtc->primary->state)->visible) { + intel_crtc_wait_for_pending_flips(crtc); + intel_pre_disable_primary(crtc); ++ ++ intel_crtc_disable_planes(crtc, 1 << drm_plane_index(crtc->primary)); ++ to_intel_plane_state(crtc->primary->state)->visible = false; + } + +- intel_crtc_disable_planes(crtc, crtc->state->plane_mask); + dev_priv->display.crtc_disable(crtc); + intel_disable_shared_dpll(intel_crtc); + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/drm-i915-Don-t-compare-has_drrs-strictly-in-pipe-con new/patches.drivers/drm-i915-Don-t-compare-has_drrs-strictly-in-pipe-con --- old/patches.drivers/drm-i915-Don-t-compare-has_drrs-strictly-in-pipe-con 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/drm-i915-Don-t-compare-has_drrs-strictly-in-pipe-con 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,48 @@ +From 13b13dfaaa39ab52b0f433c6744f4638793cbf7b Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <[email protected]> +Date: Wed, 25 Nov 2015 15:26:47 +0100 +Subject: [PATCH] drm/i915: Don't compare has_drrs strictly in pipe config +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: 13b13dfaaa39ab52b0f433c6744f4638793cbf7b +Git-repo: git://anongit.freedesktop.org/drm-intel +References: bsc#956397 + +The commit [cfb23ed622d0: drm/i915: Allow fuzzy matching in +pipe_config_compare, v2] relaxed the way to compare the pipe +configurations, but one new comparison sneaked in there: it added the +strict has_drrs value check. This causes a regression on many +machines, typically HP laptops with a docking port, where the kernel +spews warnings and eventually fails to set the mode properly like: + [drm:intel_pipe_config_compare [i915]] *ERROR* mismatch in has_drrs (expected 1, found 0) + ------------[ cut here ]------------ + WARNING: CPU: 0 PID: 79 at drivers/gpu/drm/i915/intel_display.c:12700 intel_modeset_check_state+0x5aa/0x870 [i915]() + pipe state doesn't match! + .... + +This patch just removes the check again for fixing the regression. + +Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=104041 +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92456 +Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=956397 +Fixes: cfb23ed622d0 ('drm/i915: Allow fuzzy matching in pipe_config_compare, v2') +Cc: <[email protected]> # v4.3+ +Reported-and-tested-by: Max Lin <[email protected]> +Signed-off-by: Takashi Iwai <[email protected]> +Reviewed-by: Daniel Vetter <[email protected]> +Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] +Signed-off-by: Jani Nikula <[email protected]> + +--- + drivers/gpu/drm/i915/intel_display.c | 1 - + 1 file changed, 1 deletion(-) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -12427,7 +12427,6 @@ intel_pipe_config_compare(struct drm_dev + if (INTEL_INFO(dev)->gen < 8) { + PIPE_CONF_CHECK_M_N(dp_m_n); + +- PIPE_CONF_CHECK_I(has_drrs); + if (current_config->has_drrs) + PIPE_CONF_CHECK_M_N(dp_m2_n2); + } else diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/drm-i915-Don-t-override-output-type-for-DDI-HDMI new/patches.drivers/drm-i915-Don-t-override-output-type-for-DDI-HDMI --- old/patches.drivers/drm-i915-Don-t-override-output-type-for-DDI-HDMI 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/drm-i915-Don-t-override-output-type-for-DDI-HDMI 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,48 @@ +From 2540058f7a9d9a843b4d9a28d4f8168dd034d030 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <[email protected]> +Date: Thu, 19 Nov 2015 12:09:56 +0100 +Subject: [PATCH] drm/i915: Don't override output type for DDI HDMI +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: 2540058f7a9d9a843b4d9a28d4f8168dd034d030 +Git-repo: git://anongit.freedesktop.org/drm-intel +References: boo#955190 + +Currently a DDI port may register the DP hotplug handler even though +it's used with HDMI, and the DP HPD handler overrides the encoder +type forcibly to DP. This caused the inconsistency on a machine +connected with a HDMI monitor; upon a hotplug event, the DDI port is +suddenly switched to be handled as a DP although the same monitor is +kept connected, and this leads to the erroneous blank output. + +This patch papers over the bug by excluding the previous HDMI encoder +type from this override. This should be fixed more fundamentally, +e.g. by moving the encoder type reset from the HPD or by having +individual encoder objects for HDMI and DP. But since the bug has +been present for a long time (3.17), it's better to have a +quick-n-dirty fix for now, and keep working on a cleaner fix. + +Bugzilla: http://bugzilla.opensuse.org/show_bug.cgi?id=955190 +Fixes: 0e32b39ceed6 ('drm/i915: add DP 1.2 MST support (v0.7)') +Cc: <[email protected]> # v3.17+ +Signed-off-by: Takashi Iwai <[email protected]> +Reviewed-by: Daniel Vetter <[email protected]> +Link: http://patchwork.freedesktop.org/patch/msgid/[email protected] +Signed-off-by: Jani Nikula <[email protected]> +Acked-by: Takashi Iwai <[email protected]> + +--- + drivers/gpu/drm/i915/intel_dp.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/gpu/drm/i915/intel_dp.c ++++ b/drivers/gpu/drm/i915/intel_dp.c +@@ -4921,7 +4921,8 @@ intel_dp_hpd_pulse(struct intel_digital_ + enum intel_display_power_domain power_domain; + enum irqreturn ret = IRQ_NONE; + +- if (intel_dig_port->base.type != INTEL_OUTPUT_EDP) ++ if (intel_dig_port->base.type != INTEL_OUTPUT_EDP && ++ intel_dig_port->base.type != INTEL_OUTPUT_HDMI) + intel_dig_port->base.type = INTEL_OUTPUT_DISPLAYPORT; + + if (long_hpd && intel_dig_port->base.type == INTEL_OUTPUT_EDP) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/ethernet-atheros-alx-add-Killer-E2400-device-ID new/patches.drivers/ethernet-atheros-alx-add-Killer-E2400-device-ID --- old/patches.drivers/ethernet-atheros-alx-add-Killer-E2400-device-ID 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/ethernet-atheros-alx-add-Killer-E2400-device-ID 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,58 @@ +From 0208e951d55c435137543e12d7ee795c3784713a Mon Sep 17 00:00:00 2001 +From: Ben Pope <[email protected]> +Date: Tue, 17 Nov 2015 18:21:07 -0700 +Subject: [PATCH] ethernet/atheros/alx: add Killer E2400 device ID +Patch-mainline: Queued in subsystem maintainer repository +Git-commit: 0208e951d55c435137543e12d7ee795c3784713a +Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git +References: boo#955363 + +This patch adds the PCI device ID (0xe0a1) and alx_pci_tbl entry for the +Killer E2400 Ethernet controller, modeled after the Killer E2200 +controller support (0xe091) already present in the alx driver. + +This patch was originally authored by Ben Pope, but it got held up by +issues in the commit message, so I'm resubmitting it on his behalf. + +I've extensively used a kernel with this patch on a System76 serw9 +laptop and am quite confident it works well (at least on the hardware I +have available for testing). + +Note that as a favor to System76, Ubuntu has been carrying this as a +sauce patch in their 4.2 based Wily kernel, which presumably has given +it real-world testing on other E2400 equipped hardware (I don't know of +any Ubuntu kernel bugs filed about it): + +https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1498633 + +Signed-off-by: Jason Gerard DeRose <[email protected]> +Signed-off-by: Ben Pope <[email protected]> +Signed-off-by: David S. Miller <[email protected]> +Acked-by: Takashi Iwai <[email protected]> + +--- + drivers/net/ethernet/atheros/alx/main.c | 2 ++ + drivers/net/ethernet/atheros/alx/reg.h | 1 + + 2 files changed, 3 insertions(+) + +--- a/drivers/net/ethernet/atheros/alx/main.c ++++ b/drivers/net/ethernet/atheros/alx/main.c +@@ -1534,6 +1534,8 @@ static const struct pci_device_id alx_pc + .driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG }, + { PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_E2200), + .driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG }, ++ { PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_E2400), ++ .driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG }, + { PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_AR8162), + .driver_data = ALX_DEV_QUIRK_MSI_INTX_DISABLE_BUG }, + { PCI_VDEVICE(ATTANSIC, ALX_DEV_ID_AR8171) }, +--- a/drivers/net/ethernet/atheros/alx/reg.h ++++ b/drivers/net/ethernet/atheros/alx/reg.h +@@ -37,6 +37,7 @@ + + #define ALX_DEV_ID_AR8161 0x1091 + #define ALX_DEV_ID_E2200 0xe091 ++#define ALX_DEV_ID_E2400 0xe0a1 + #define ALX_DEV_ID_AR8162 0x1090 + #define ALX_DEV_ID_AR8171 0x10A1 + #define ALX_DEV_ID_AR8172 0x10A0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/thinkpad_acpi-Don-t-yell-on-unsupported-brightness-i new/patches.drivers/thinkpad_acpi-Don-t-yell-on-unsupported-brightness-i --- old/patches.drivers/thinkpad_acpi-Don-t-yell-on-unsupported-brightness-i 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.drivers/thinkpad_acpi-Don-t-yell-on-unsupported-brightness-i 2015-12-16 09:03:35.000000000 +0100 @@ -0,0 +1,38 @@ +From d618651b0f112d9715d0ca6f9dbea87761be15d7 Mon Sep 17 00:00:00 2001 +From: David Herrmann <[email protected]> +Date: Wed, 21 Oct 2015 12:46:10 +0200 +Subject: [PATCH] thinkpad_acpi: Don't yell on unsupported brightness interfaces +Git-commit: d618651b0f112d9715d0ca6f9dbea87761be15d7 +Patch-mainline: 4.4-rc1 +References: boo#957152 + +The thinkpad_acpi driver currently emits error messages on unsupported +brightness interfaces, giving the impression that someone will implement +those. However, this error is spit out on nearly every thinkpad in +production since 2 years now. Furthermore, the backlight interfaces on +those devices are supported by the i915 driver just fine. + +Downgrade the error message to a normal pr_info() and stop telling people +to report it to IBM. + +Signed-off-by: David Herrmann <[email protected]> +Acked-by: Henrique de Moraes Holschuh <[email protected]> +Signed-off-by: Darren Hart <[email protected]> +Acked-by: Takashi Iwai <[email protected]> + +--- + drivers/platform/x86/thinkpad_acpi.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +--- a/drivers/platform/x86/thinkpad_acpi.c ++++ b/drivers/platform/x86/thinkpad_acpi.c +@@ -6458,8 +6458,7 @@ static void __init tpacpi_detect_brightn + pr_info("detected a 8-level brightness capable ThinkPad\n"); + break; + default: +- pr_err("Unsupported brightness interface, " +- "please contact %s\n", TPACPI_MAIL); ++ pr_info("Unsupported brightness interface\n"); + tp_features.bright_unkfw = 1; + bright_maxlvl = b - 1; + } ++++++ patches.fixes.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/bridge-module-get-put.patch new/patches.fixes/bridge-module-get-put.patch --- old/patches.fixes/bridge-module-get-put.patch 2015-11-06 20:39:54.000000000 +0100 +++ new/patches.fixes/bridge-module-get-put.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,45 +0,0 @@ -From: [email protected] -Subject: Module use count must be updated as bridges are created/destroyed -Patch-mainline: no (rejected upstream with no suitable alternative proposal) -References: 267651 - -Otherwise 'modprobe -r' on a module having a dependency on bridge will -implicitly unload bridge, bringing down all connectivity that was using -bridges. - ---- - net/bridge/br_if.c | 11 ++++++++++- - 1 file changed, 10 insertions(+), 1 deletion(-) - ---- a/net/bridge/br_if.c -+++ b/net/bridge/br_if.c -@@ -239,12 +239,19 @@ int br_add_bridge(struct net *net, const - if (!dev) - return -ENOMEM; - -+ if (!try_module_get(THIS_MODULE)) { -+ free_netdev(dev); -+ return -ENOENT; -+ } -+ - dev_net_set(dev, net); - dev->rtnl_link_ops = &br_link_ops; - - res = register_netdev(dev); -- if (res) -+ if (res) { - free_netdev(dev); -+ module_put(THIS_MODULE); -+ } - return res; - } - -@@ -272,6 +279,8 @@ int br_del_bridge(struct net *net, const - br_dev_delete(dev, NULL); - - rtnl_unlock(); -+ if (ret == 0) -+ module_put(THIS_MODULE); - return ret; - } - ++++++ patches.kernel.org.tar.bz2 ++++++ ++++ 9087 lines of diff (skipped) ++++++ patches.suse.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/crasher-26.diff new/patches.suse/crasher-26.diff --- old/patches.suse/crasher-26.diff 2015-09-25 22:51:28.000000000 +0200 +++ new/patches.suse/crasher-26.diff 1970-01-01 01:00:00.000000000 +0100 @@ -1,264 +0,0 @@ -From: Chris Mason <[email protected]> -Subject: slab testing module -Patch-mainline: probably never - ---- - drivers/char/Kconfig | 5 + - drivers/char/Makefile | 1 - drivers/char/crasher.c | 228 +++++++++++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 234 insertions(+) - ---- a/drivers/char/Kconfig -+++ b/drivers/char/Kconfig -@@ -608,6 +608,11 @@ config RAMOOPS - - source "drivers/s390/char/Kconfig" - -+config CRASHER -+ tristate "Crasher Module" -+ help -+ Slab cache memory tester. Only use this as a module -+ - config TILE_SROM - bool "Character-device access via hypervisor to the Tilera SPI ROM" - depends on TILE ---- a/drivers/char/Makefile -+++ b/drivers/char/Makefile -@@ -57,6 +57,7 @@ obj-$(CONFIG_IPMI_HANDLER) += ipmi/ - - obj-$(CONFIG_HANGCHECK_TIMER) += hangcheck-timer.o - obj-$(CONFIG_TCG_TPM) += tpm/ -+obj-$(CONFIG_CRASHER) += crasher.o - - obj-$(CONFIG_PS3_FLASH) += ps3flash.o - ---- /dev/null -+++ b/drivers/char/crasher.c -@@ -0,0 +1,227 @@ -+/* -+ * crasher.c, it breaks things -+ */ -+ -+ -+#include <linux/module.h> -+#include <linux/types.h> -+#include <linux/kernel.h> -+#include <linux/init.h> -+#include <linux/slab.h> -+#include <linux/completion.h> -+#include <linux/jiffies.h> -+#include <linux/sched.h> -+#include <linux/moduleparam.h> -+#include <linux/kthread.h> -+ -+static int module_exiting; -+static struct completion startup = COMPLETION_INITIALIZER(startup); -+static unsigned long rand_seed = 152L; -+static unsigned long seed = 152L; -+static int threads = 1; -+static bool call_panic, call_bug, call_warn; -+static bool trap_null, call_null, jump_null; -+static long trap_read, trap_write, call_bad, jump_bad; -+ -+module_param(seed, ulong, 0); -+module_param(call_panic, bool, 0); -+module_param(call_bug, bool, 0); -+module_param(call_warn, bool, 0); -+module_param(trap_null, bool, 0); -+module_param(trap_read, long, 0); -+module_param(trap_write, long, 0); -+module_param(call_null, bool, 0); -+module_param(call_bad, long, 0); -+module_param(jump_null, bool, 0); -+module_param(jump_bad, long, 0); -+module_param(threads, int, 0); -+MODULE_PARM_DESC(seed, "random seed for memory tests"); -+MODULE_PARM_DESC(call_panic, "test option. call panic() and render the system unusable."); -+MODULE_PARM_DESC(call_bug, "test option. call BUG() and render the system unusable."); -+MODULE_PARM_DESC(call_warn, "test option. call WARN() and leave the system usable."); -+MODULE_PARM_DESC(trap_null, "test option. dereference a NULL pointer to simulate a crash and render the system unusable."); -+MODULE_PARM_DESC(trap_read, "test option. read from an invalid address to simulate a crash and render the system unusable."); -+MODULE_PARM_DESC(trap_write, "test option. write to an invalid address to simulate a crash and render the system unusable."); -+MODULE_PARM_DESC(call_null, "test option. call a NULL pointer to simulate a crash and render the system unusable."); -+MODULE_PARM_DESC(call_bad, "test option. call an invalid address to simulate a crash and render the system unusable."); -+MODULE_PARM_DESC(jump_null, "test option. jump to a NULL pointer to simulate a crash and render the system unusable."); -+MODULE_PARM_DESC(jump_bad, "test option. jump to an invalid address to simulate a crash and render the system unusable."); -+MODULE_PARM_DESC(threads, "number of threads to run"); -+MODULE_LICENSE("GPL"); -+ -+#define NUM_ALLOC 24 -+#define NUM_SIZES 8 -+static int sizes[] = { 32, 64, 128, 192, 256, 1024, 2048, 4096 }; -+ -+struct mem_buf { -+ char *buf; -+ int size; -+}; -+ -+static unsigned long crasher_random(void) -+{ -+ rand_seed = rand_seed*69069L+1; -+ return rand_seed^jiffies; -+} -+ -+void crasher_srandom(unsigned long entropy) -+{ -+ rand_seed ^= entropy; -+ crasher_random(); -+} -+ -+static char *mem_alloc(int size) { -+ char *p = kmalloc(size, GFP_KERNEL); -+ int i; -+ if (!p) -+ return p; -+ for (i = 0 ; i < size; i++) -+ p[i] = (i % 119) + 8; -+ return p; -+} -+ -+static void mem_check(char *p, int size) { -+ int i; -+ if (!p) -+ return; -+ for (i = 0 ; i < size; i++) { -+ if (p[i] != ((i % 119) + 8)) { -+ printk(KERN_CRIT "verify error at %lX offset %d " -+ " wanted %d found %d size %d\n", -+ (unsigned long)(p + i), i, (i % 119) + 8, -+ p[i], size); -+ } -+ } -+ // try and trigger slab poisoning for people using this buffer -+ // wrong -+ memset(p, 0, size); -+} -+ -+static void mem_verify(void) { -+ struct mem_buf bufs[NUM_ALLOC]; -+ struct mem_buf *b; -+ int index; -+ int size; -+ unsigned long sleep; -+ memset(bufs, 0, sizeof(struct mem_buf) * NUM_ALLOC); -+ while(!module_exiting) { -+ index = crasher_random() % NUM_ALLOC; -+ b = bufs + index; -+ if (b->size) { -+ mem_check(b->buf, b->size); -+ kfree(b->buf); -+ b->buf = NULL; -+ b->size = 0; -+ } else { -+ size = crasher_random() % NUM_SIZES; -+ size = sizes[size]; -+ b->buf = mem_alloc(size); -+ b->size = size; -+ } -+ sleep = crasher_random() % (HZ / 10); -+ set_current_state(TASK_INTERRUPTIBLE); -+ schedule_timeout(sleep); -+ set_current_state(TASK_RUNNING); -+ } -+ for (index = 0 ; index < NUM_ALLOC ; index++) { -+ b = bufs + index; -+ if (b->size) { -+ mem_check(b->buf, b->size); -+ kfree(b->buf); -+ } -+ } -+} -+ -+static int crasher_thread(void *unused) -+{ -+ complete(&startup); -+ mem_verify(); -+ complete(&startup); -+ return 0; -+} -+ -+static int __init crasher_init(void) -+{ -+ int i; -+ init_completion(&startup); -+ crasher_srandom(seed); -+ -+ if (call_panic) { -+ panic("test panic from crasher module. Good Luck.\n"); -+ return -EFAULT; -+ } -+ if (call_bug) { -+ printk("triggering BUG\n"); -+ BUG_ON(1); -+ return -EFAULT; -+ } -+ if (WARN(call_warn, "triggering WARN\n")) -+ return -EFAULT; -+ -+ if (trap_null) { -+ volatile char *p = NULL; -+ printk("dereferencing NULL pointer.\n"); -+ p[0] = '\n'; -+ return -EFAULT; -+ } -+ if (trap_read) { -+ const volatile char *p = (char *)trap_read; -+ printk("reading from invalid(?) address %p.\n", p); -+ return p[0] ? -EFAULT : -EACCES; -+ } -+ if (trap_write) { -+ volatile char *p = (char *)trap_write; -+ printk("writing to invalid(?) address %p.\n", p); -+ p[0] = ' '; -+ return -EFAULT; -+ } -+ -+ if (call_null) { -+ void(*f)(void) = NULL; -+ printk("calling NULL pointer.\n"); -+ f(); -+ return -EFAULT; -+ } -+ if (call_bad) { -+ void(*f)(void) = (void(*)(void))call_bad; -+ printk("calling invalid(?) address %p.\n", f); -+ f(); -+ return -EFAULT; -+ } -+ -+ /* These two depend on the compiler doing tail call optimization. */ -+ if (jump_null) { -+ int(*f)(void) = NULL; -+ printk("jumping to NULL.\n"); -+ return f(); -+ } -+ if (jump_bad) { -+ int(*f)(void) = (int(*)(void))jump_bad; -+ printk("jumping to invalid(?) address %p.\n", f); -+ return f(); -+ } -+ -+ printk("crasher module (%d threads). Testing sizes: ", threads); -+ for (i = 0 ; i < NUM_SIZES ; i++) -+ printk("%d ", sizes[i]); -+ printk("\n"); -+ -+ for (i = 0 ; i < threads ; i++) -+ kthread_run(crasher_thread, crasher_thread, "crasher"); -+ for (i = 0 ; i < threads ; i++) -+ wait_for_completion(&startup); -+ return 0; -+} -+ -+static void __exit crasher_exit(void) -+{ -+ int i; -+ module_exiting = 1; -+ for (i = 0 ; i < threads ; i++) -+ wait_for_completion(&startup); -+ printk("all crasher threads done\n"); -+ return; -+} -+ -+module_init(crasher_init); -+module_exit(crasher_exit); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/crasher.patch new/patches.suse/crasher.patch --- old/patches.suse/crasher.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.suse/crasher.patch 2015-12-07 11:27:59.000000000 +0100 @@ -0,0 +1,291 @@ +From: Chris Mason <[email protected]> +Subject: Crashing and slab testing module +Patch-mainline: Not yet, probably not applicable + +js: +* make it 'depends on m' explicitly instead of help text note +* trigger the crash from the timer context if requested +* use prandom_u32* from kernel, no self-designed +* simplify the code heavily +* use DECLARE_COMPLETION, init_completion not needed +* use bitmap to deny compiler optimizations on module_exiting +* do not use set_current_state, use schedule_timeout_interruptible +* order includes +* proper types for parameters +* use ARRAY_SIZE +* constify 'sizes' array +* prepend "crasher: " to prints +* printk -> proper pr_* level conversion +* whitespace cleanup + +Signed-off-by: Jiri Slaby <[email protected]> + +--- + drivers/char/Kconfig | 6 + + drivers/char/Makefile | 1 + drivers/char/crasher.c | 235 +++++++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 242 insertions(+) + +--- a/drivers/char/Kconfig ++++ b/drivers/char/Kconfig +@@ -590,6 +590,12 @@ config DEVPORT + + source "drivers/s390/char/Kconfig" + ++config CRASHER ++ tristate "Crasher Module" ++ depends on m ++ help ++ Slab cache memory tester and crasher on will. ++ + config TILE_SROM + bool "Character-device access via hypervisor to the Tilera SPI ROM" + depends on TILE +--- a/drivers/char/Makefile ++++ b/drivers/char/Makefile +@@ -52,6 +52,7 @@ obj-$(CONFIG_PCMCIA) += pcmcia/ + + obj-$(CONFIG_HANGCHECK_TIMER) += hangcheck-timer.o + obj-$(CONFIG_TCG_TPM) += tpm/ ++obj-$(CONFIG_CRASHER) += crasher.o + + obj-$(CONFIG_PS3_FLASH) += ps3flash.o + +--- /dev/null ++++ b/drivers/char/crasher.c +@@ -0,0 +1,235 @@ ++/* ++ * crasher.c, it breaks things ++ */ ++ ++#include <linux/completion.h> ++#include <linux/init.h> ++#include <linux/jiffies.h> ++#include <linux/kernel.h> ++#include <linux/kthread.h> ++#include <linux/module.h> ++#include <linux/moduleparam.h> ++#include <linux/random.h> ++#include <linux/sched.h> ++#include <linux/slab.h> ++#include <linux/timer.h> ++#include <linux/types.h> ++ ++static DECLARE_BITMAP(module_exiting, 1); ++static DECLARE_COMPLETION(startup); ++static unsigned int threads = 1; ++static unsigned int timer; ++static bool call_panic, call_bug, call_warn; ++static bool trap_null, call_null, jump_null; ++static unsigned long trap_read, trap_write, call_bad, jump_bad; ++ ++module_param(timer, uint, 0); ++module_param(call_panic, bool, 0); ++module_param(call_bug, bool, 0); ++module_param(call_warn, bool, 0); ++module_param(trap_null, bool, 0); ++module_param(trap_read, ulong, 0); ++module_param(trap_write, ulong, 0); ++module_param(call_null, bool, 0); ++module_param(call_bad, ulong, 0); ++module_param(jump_null, bool, 0); ++module_param(jump_bad, ulong, 0); ++module_param(threads, uint, 0); ++MODULE_PARM_DESC(timer, "perform the selected crash action from the timer context in the specified number of ms"); ++MODULE_PARM_DESC(call_panic, "test option. call panic() and render the system unusable."); ++MODULE_PARM_DESC(call_bug, "test option. call BUG() and render the system unusable."); ++MODULE_PARM_DESC(call_warn, "test option. call WARN() and leave the system usable."); ++MODULE_PARM_DESC(trap_null, "test option. dereference a NULL pointer to simulate a crash and render the system unusable."); ++MODULE_PARM_DESC(trap_read, "test option. read from an invalid address to simulate a crash and render the system unusable."); ++MODULE_PARM_DESC(trap_write, "test option. write to an invalid address to simulate a crash and render the system unusable."); ++MODULE_PARM_DESC(call_null, "test option. call a NULL pointer to simulate a crash and render the system unusable."); ++MODULE_PARM_DESC(call_bad, "test option. call an invalid address to simulate a crash and render the system unusable."); ++MODULE_PARM_DESC(jump_null, "test option. jump to a NULL pointer to simulate a crash and render the system unusable."); ++MODULE_PARM_DESC(jump_bad, "test option. jump to an invalid address to simulate a crash and render the system unusable."); ++MODULE_PARM_DESC(threads, "number of threads to run"); ++MODULE_LICENSE("GPL"); ++ ++#define NUM_ALLOC 24 ++static const unsigned int sizes[] = { 32, 64, 128, 192, 256, 1024, 2048, 4096 }; ++#define NUM_SIZES ARRAY_SIZE(sizes) ++ ++struct mem_buf { ++ char *buf; ++ unsigned int size; ++}; ++ ++static inline char crasher_hash(unsigned int i) ++{ ++ return (i % 119) + 8; ++} ++ ++static void mem_alloc(struct mem_buf *b) ++{ ++ unsigned int i, size = sizes[prandom_u32_max(NUM_SIZES)]; ++ ++ b->buf = kmalloc(size, GFP_KERNEL); ++ if (!b->buf) ++ return; ++ ++ b->size = size; ++ ++ for (i = 0 ; i < size; i++) ++ b->buf[i] = crasher_hash(i); ++} ++ ++static void mem_check_free(struct mem_buf *b) ++{ ++ unsigned int i; ++ ++ for (i = 0 ; i < b->size; i++) { ++ if (b->buf[i] != crasher_hash(i)) { ++ pr_crit("crasher: verify error at %p, offset %u, wanted %d, found %d, size %u\n", ++ &b->buf[i], i, crasher_hash(i), ++ b->buf[i], b->size); ++ } ++ } ++ kfree(b->buf); ++ b->buf = NULL; ++ b->size = 0; ++} ++ ++static void mem_verify(void) ++{ ++ struct mem_buf *b, bufs[NUM_ALLOC] = {}; ++ ++ while (!test_bit(0, module_exiting)) { ++ b = &bufs[prandom_u32_max(NUM_ALLOC)]; ++ if (b->size) ++ mem_check_free(b); ++ else ++ mem_alloc(b); ++ schedule_timeout_interruptible(prandom_u32_max(HZ / 10)); ++ } ++ ++ for (b = bufs; b < &bufs[NUM_ALLOC]; b++) ++ if (b->size) ++ mem_check_free(b); ++} ++ ++static int crasher_thread(void *unused) ++{ ++ complete(&startup); ++ mem_verify(); ++ complete(&startup); ++ ++ return 0; ++} ++ ++static int crash_now(void) ++{ ++ if (call_panic) { ++ panic("test panic from crasher module. Good luck!"); ++ return -EFAULT; ++ } ++ if (call_bug) { ++ pr_crit("crasher: triggering BUG\n"); ++ BUG(); ++ return -EFAULT; ++ } ++ if (WARN(call_warn, "crasher: triggering WARN\n")) ++ return -EFAULT; ++ ++ if (trap_null) { ++ volatile char *p = NULL; ++ pr_crit("crasher: dereferencing NULL pointer\n"); ++ p[0] = '\n'; ++ return -EFAULT; ++ } ++ if (trap_read) { ++ const volatile char *p = (char *)trap_read; ++ pr_crit("crasher: reading from invalid(?) address %p\n", p); ++ return p[0] ? -EFAULT : -EACCES; ++ } ++ if (trap_write) { ++ volatile char *p = (char *)trap_write; ++ pr_crit("crasher: writing to invalid(?) address %p\n", p); ++ p[0] = ' '; ++ return -EFAULT; ++ } ++ ++ if (call_null) { ++ void (*f)(void) = NULL; ++ pr_crit("crasher: calling NULL pointer\n"); ++ f(); ++ return -EFAULT; ++ } ++ if (call_bad) { ++ void (*f)(void) = (void(*)(void))call_bad; ++ pr_crit("crasher: calling invalid(?) address %p\n", f); ++ f(); ++ return -EFAULT; ++ } ++ ++ /* These two depend on the compiler doing tail call optimization */ ++ if (jump_null) { ++ int (*f)(void) = NULL; ++ pr_crit("crasher: jumping to NULL\n"); ++ return f(); ++ } ++ if (jump_bad) { ++ int (*f)(void) = (int(*)(void))jump_bad; ++ pr_crit("crasher: jumping to invalid(?) address %p\n", f); ++ return f(); ++ } ++ ++ return 0; ++} ++ ++static void crash_timer_cb(unsigned long unused) ++{ ++ crash_now(); ++} ++ ++static DEFINE_TIMER(crash_timer, crash_timer_cb, 0, 0); ++ ++static int __init crasher_init(void) ++{ ++ int ret, i; ++ ++ if (timer) { ++ pr_info("crasher: crashing in %u miliseconds...\n", timer); ++ mod_timer(&crash_timer, jiffies + msecs_to_jiffies(timer)); ++ return 0; ++ } ++ ++ ret = crash_now(); ++ if (ret) ++ return ret; ++ ++ pr_info("crasher: running %u threads. Testing sizes: ", threads); ++ for (i = 0; i < NUM_SIZES; i++) ++ pr_cont("%u ", sizes[i]); ++ pr_cont("\n"); ++ ++ for (i = 0; i < threads; i++) ++ kthread_run(crasher_thread, NULL, "crasher"); ++ for (i = 0; i < threads; i++) ++ wait_for_completion(&startup); ++ ++ return 0; ++} ++ ++static void __exit crasher_exit(void) ++{ ++ unsigned int i; ++ ++ if (timer) { ++ del_timer_sync(&crash_timer); ++ return; ++ } ++ ++ set_bit(0, module_exiting); ++ ++ for (i = 0; i < threads; i++) ++ wait_for_completion(&startup); ++ ++ pr_info("crasher: all threads done\n"); ++} ++ ++module_init(crasher_init); ++module_exit(crasher_exit); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/stack-unwind new/patches.suse/stack-unwind --- old/patches.suse/stack-unwind 2015-09-25 22:51:28.000000000 +0200 +++ new/patches.suse/stack-unwind 2015-12-07 11:27:59.000000000 +0100 @@ -24,6 +24,9 @@ VSYSCALL_ADDR / VSYSCALL_ADDR + PAGE_SIZE Update Sep 22 2015 jslaby: - Enablement after manual dwarf annotations are gone from upstream +Update Dec 07 2015 jslaby: +- Fix missing put_cpu in x86_32's dump_trace (bnc#943107) + get_cpu is needed only for the loop, so move it TODO: * annotate arch_unwind_init_running by FRAME_BEGIN/END in both entry_32/64.S. @@ -42,8 +45,8 @@ arch/x86/include/asm/switch_to.h | 10 arch/x86/include/asm/unwind.h | 159 +++ arch/x86/kernel/dumpstack.c | 88 ++ - arch/x86/kernel/dumpstack_32.c | 4 - arch/x86/kernel/dumpstack_64.c | 7 + arch/x86/kernel/dumpstack_32.c | 7 + arch/x86/kernel/dumpstack_64.c | 11 arch/x86/kernel/vmlinux.lds.S | 2 arch/x86/tools/relocs.c | 1 include/asm-generic/vmlinux.lds.h | 22 @@ -54,7 +57,7 @@ kernel/module.c | 32 kernel/unwind.c | 1652 ++++++++++++++++++++++++++++++++++++++ lib/Kconfig.debug | 24 - 22 files changed, 2237 insertions(+), 6 deletions(-) + 22 files changed, 2241 insertions(+), 9 deletions(-) --- a/Makefile +++ b/Makefile @@ -537,7 +540,15 @@ +#endif --- a/arch/x86/kernel/dumpstack_32.c +++ b/arch/x86/kernel/dumpstack_32.c -@@ -49,6 +49,10 @@ void dump_trace(struct task_struct *task +@@ -42,13 +42,17 @@ void dump_trace(struct task_struct *task + unsigned long *stack, unsigned long bp, + const struct stacktrace_ops *ops, void *data) + { +- const unsigned cpu = get_cpu(); ++ unsigned cpu; + int graph = 0; + u32 *prev_esp; + if (!task) task = current; @@ -548,6 +559,14 @@ if (!stack) { unsigned long dummy; +@@ -60,6 +64,7 @@ void dump_trace(struct task_struct *task + if (!bp) + bp = stack_frame(task, regs); + ++ cpu = get_cpu(); + for (;;) { + struct thread_info *context; + void *end_stack; --- a/arch/x86/kernel/dumpstack_64.c +++ b/arch/x86/kernel/dumpstack_64.c @@ -14,6 +14,7 @@ @@ -558,19 +577,38 @@ #include <asm/stacktrace.h> -@@ -163,6 +164,12 @@ void dump_trace(struct task_struct *task +@@ -152,9 +153,9 @@ void dump_trace(struct task_struct *task + unsigned long *stack, unsigned long bp, + const struct stacktrace_ops *ops, void *data) + { +- const unsigned cpu = get_cpu(); ++ unsigned cpu; + struct thread_info *tinfo; +- unsigned long *irq_stack = (unsigned long *)per_cpu(irq_stack_ptr, cpu); ++ unsigned long *irq_stack; + unsigned long dummy; + unsigned used = 0; + int graph = 0; +@@ -163,6 +164,10 @@ void dump_trace(struct task_struct *task if (!task) task = current; + bp = stack_frame(task, regs); -+ if (try_stack_unwind(task, regs, &stack, &bp, ops, data)) { -+ put_cpu(); ++ if (try_stack_unwind(task, regs, &stack, &bp, ops, data)) + return; -+ } + if (!stack) { if (regs) stack = (unsigned long *)regs->sp; +@@ -180,6 +185,8 @@ void dump_trace(struct task_struct *task + * exceptions + */ + tinfo = task_thread_info(task); ++ cpu = get_cpu(); ++ irq_stack = (unsigned long *)per_cpu(irq_stack_ptr, cpu); + while (!done) { + unsigned long *stack_end; + enum stack_type stype; --- a/arch/x86/kernel/vmlinux.lds.S +++ b/arch/x86/kernel/vmlinux.lds.S @@ -332,7 +332,9 @@ SECTIONS @@ -861,7 +899,7 @@ #define MODINFO_ATTR(field) \ static void setup_modinfo_##field(struct module *mod, const char *s) \ { \ -@@ -2089,6 +2111,8 @@ static void free_module(struct module *m +@@ -2093,6 +2115,8 @@ static void free_module(struct module *m /* Remove dynamic debug info */ ddebug_remove_module(mod->name); @@ -870,7 +908,7 @@ /* Arch-specific cleanup. */ module_arch_cleanup(mod); -@@ -2907,6 +2931,8 @@ static struct module *setup_load_info(st +@@ -2911,6 +2935,8 @@ static struct module *setup_load_info(st info->index.pcpu = find_pcpusec(info); @@ -879,7 +917,7 @@ /* Check module struct version now, before we try to use module. */ if (!check_modstruct_version(info->sechdrs, info->index.vers, mod)) return ERR_PTR(-ENOEXEC); -@@ -3349,6 +3375,7 @@ static noinline int do_init_module(struc +@@ -3353,6 +3379,7 @@ static noinline int do_init_module(struc /* Drop initial reference. */ module_put(mod); trim_init_extable(mod); @@ -887,7 +925,7 @@ #ifdef CONFIG_KALLSYMS mod->num_symtab = mod->core_num_syms; mod->symtab = mod->core_symtab; -@@ -3606,6 +3633,9 @@ static int load_module(struct load_info +@@ -3610,6 +3637,9 @@ static int load_module(struct load_info if (err < 0) goto bug_cleanup; @@ -2579,7 +2617,7 @@ config BOOT_PRINTK_DELAY bool "Delay each boot printk message by N milliseconds" depends on DEBUG_KERNEL && PRINTK && GENERIC_CALIBRATE_DELAY -@@ -1540,7 +1558,8 @@ config FAULT_INJECTION_STACKTRACE_FILTER +@@ -1541,7 +1559,8 @@ config FAULT_INJECTION_STACKTRACE_FILTER depends on FAULT_INJECTION_DEBUG_FS && STACKTRACE_SUPPORT depends on !X86_64 select STACKTRACE @@ -2589,7 +2627,7 @@ help Provide stacktrace filter for fault-injection capabilities -@@ -1550,7 +1569,8 @@ config LATENCYTOP +@@ -1551,7 +1570,8 @@ config LATENCYTOP depends on DEBUG_KERNEL depends on STACKTRACE_SUPPORT depends on PROC_FS ++++++ patches.xen.tar.bz2 ++++++ ++++ 401570 lines of diff (skipped) ++++++ post.sh ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:56.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:56.000000000 +0100 @@ -2,11 +2,9 @@ touch /boot/do_purge_kernels suffix= -case @FLAVOR@ in - xen*|ec2|vanilla) - suffix=-@FLAVOR@ - ;; -esac +if test "@FLAVOR@" = "vanilla"; then + suffix=-@FLAVOR@ +fi for x in /boot/@IMAGE@ /boot/initrd; do rm -f $x$suffix ln -s ${x##*/}-@KERNELRELEASE@-@FLAVOR@ $x$suffix ++++++ series.conf ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:56.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:56.000000000 +0100 @@ -27,6 +27,9 @@ # DO NOT MODIFY THEM! # Send separate patches upstream if you find a problem... ######################################################## + patches.kernel.org/patch-4.3.1 + patches.kernel.org/patch-4.3.1-2 + patches.kernel.org/patch-4.3.2-3 ######################################################## # Build fixes that apply to the vanilla kernel too. @@ -227,10 +230,9 @@ patches.suse/suse-hv-guest-os-id.patch patches.suse/suse-hv-storvsc-sg_tablesize.patch - ######################################################## - # Networking, IPv6 - ######################################################## - patches.fixes/bridge-module-get-put.patch + ######################################################## + # Networking, IPv6 + ######################################################## ######################################################## # NFS @@ -346,6 +348,9 @@ ######################################################## +jeffm patches.fixes/nouveau-fix-race-with-fence-signaling patches.fixes/drm-sti-Remove-select-of-CONFI_FW_LOADER_USER_HELPER + patches.drivers/drm-i915-Don-t-compare-has_drrs-strictly-in-pipe-con + patches.drivers/drm-i915-Don-t-override-output-type-for-DDI-HDMI + patches.drivers/drm-i915-Do-a-better-job-at-disabling-primary-plane ######################################################## # video4linux @@ -357,6 +362,7 @@ # Network ######################################################## patches.fixes/tulip-quad-NIC-ifdown + patches.drivers/ethernet-atheros-alx-add-Killer-E2400-device-ID ######################################################## # Wireless Networking @@ -400,6 +406,10 @@ ########################################################## patches.drivers/ALSA-hda-Disable-64bit-address-for-Creative-HDA-cont patches.drivers/ALSA-hda-Fix-lost-4k-BDL-boundary-workaround + patches.drivers/ALSA-hda-Fix-noise-problems-on-Thinkpad-T440s + patches.drivers/ALSA-hda-Apply-click-noise-workaround-for-Thinkpads + patches.drivers/ALSA-hda-Set-codec-to-D3-at-reboot-shutdown-on-Think + patches.drivers/ALSA-hda-Add-a-fixup-for-Thinkpad-X1-Carbon-2nd ######################################################## # Char / serial @@ -412,6 +422,8 @@ # Needs updating WRT d27769ec (block: add GENHD_FL_NO_PART_SCAN) +hare patches.suse/no-partition-scan + patches.drivers/thinkpad_acpi-Don-t-yell-on-unsupported-brightness-i + ######################################################## # Other drivers we have added to the tree ######################################################## @@ -443,6 +455,7 @@ # ########################################################## + ########################################################## # Audit ########################################################## @@ -466,7 +479,7 @@ ######################################################## # Other patches for debugging ######################################################## - patches.suse/crasher-26.diff + patches.suse/crasher.patch patches.suse/revert-x86-remove-warning-and-warning_symbol-from-struct-stacktrace_ops patches.suse/stack-unwind +needs_updating patches.arch/x86_64-unwind-annotations @@ -504,157 +517,3 @@ # You'd better have a good reason for adding a patch # below here. ######################################################## - -######################################################## -# XEN architecture, version 3 -######################################################## - -# xen patches, from xenbits mercurial repository. -# http://xenbits.xensource.com/ext/linux-2.6-merge.hg -# -# everything named "xen3-auto-*" is auto-generated. -# PLEASE DON'T EDIT THESE PATCHES. Create fixup patches -# on top of them instead. This reduces workload when -# re-basing to a newer xen tree. -# - # split out patches - patches.xen/kexec-move-segment-code-i386.patch - patches.xen/kexec-move-segment-code-x86_64.patch - patches.xen/ipv6-no-autoconf - patches.xen/pci-guestdev - patches.xen/pci-reserve - - # bulk stuff, new files for xen - patches.xen/xen3-auto-xen-arch.diff - patches.xen/xen3-auto-xen-drivers.diff - patches.xen/xen3-auto-include-xen-interface.diff - patches.xen/xen3-auto-blktap2-pvops.diff - - # kconfig bits for xen - patches.xen/xen3-auto-xen-kconfig.diff - - # common code changes - patches.xen/xen3-auto-common.diff - patches.xen/xen3-auto-arch-x86.diff - patches.xen/xen3-auto-arch-i386.diff - patches.xen/xen3-auto-arch-x86_64.diff - - # fixups due to upstream Xen parts - patches.xen/xen3-fixup-xen - - # newer changeset backports - - # changes outside arch/{i386,x86_64}/xen - patches.xen/xen3-fixup-kconfig - patches.xen/xen3-fixup-common - patches.xen/xen3-fixup-arch-x86 - patches.xen/xen3-fixup-blktap2-pvops - - # ports of upstream patches - patches.xen/xen3-patch-2.6.18 - patches.xen/xen3-patch-2.6.19 - patches.xen/xen3-patch-2.6.20 - patches.xen/xen3-patch-2.6.21 - patches.xen/xen3-patch-2.6.22 - patches.xen/xen3-patch-2.6.23 - patches.xen/xen3-patch-2.6.24 - patches.xen/xen3-patch-2.6.25 - patches.xen/xen3-patch-2.6.26 - patches.xen/xen3-patch-2.6.27 - patches.xen/xen3-patch-2.6.28 - patches.xen/xen3-patch-2.6.29 - patches.xen/xen3-patch-2.6.30 - patches.xen/xen3-patch-2.6.31 - patches.xen/xen3-patch-2.6.32 - patches.xen/xen3-patch-2.6.33 - patches.xen/xen3-patch-2.6.34 - patches.xen/xen3-patch-2.6.35 - patches.xen/xen3-patch-2.6.36 - patches.xen/xen3-patch-2.6.37 - patches.xen/xen3-patch-2.6.38 - patches.xen/xen3-patch-2.6.39 - patches.xen/xen3-patch-3.0 - patches.xen/xen3-patch-3.1 - patches.xen/xen3-patch-3.2 - patches.xen/xen3-patch-3.3 - patches.xen/xen3-patch-3.4 - patches.xen/xen3-patch-3.5 - patches.xen/xen3-patch-3.6 - patches.xen/xen3-patch-3.7 - patches.xen/xen3-patch-3.8 - patches.xen/xen3-patch-3.9 - patches.xen/xen3-patch-3.10 - patches.xen/xen3-patch-3.11 - patches.xen/xen3-patch-3.12 - patches.xen/xen3-patch-3.13 - patches.xen/xen3-patch-3.14 - patches.xen/xen3-patch-3.15 - patches.xen/xen3-patch-3.16 - patches.xen/xen3-patch-3.17 - patches.xen/xen3-patch-3.18 - patches.xen/xen3-patch-3.19 - patches.xen/xen3-patch-4.0 - patches.xen/xen3-patch-4.1 - patches.xen/xen3-patch-4.2 - patches.xen/xen3-patch-4.3 - - # ports of other patches - patches.xen/xen3-stack-unwind - - # bugfixes and enhancements - patches.xen/xen-sys-suspend - patches.xen/xen-ipi-per-cpu-irq - patches.xen/xen-virq-per-cpu-irq - patches.xen/xen-clockevents - patches.xen/xen-spinlock-poll-early - patches.xen/xen-pcpu - patches.xen/xen-pcpu-hotplug-kexec - patches.xen/xen-mem-hotplug - patches.xen/xen-configurable-guest-devices - patches.xen/xen-setup-gsi - patches.xen/xen-privcmd-hcall-preemption - patches.xen/xen-privcmd-truly-batch - patches.xen/xen-unpriv-build - patches.xen/xen-cpufreq-report - patches.xen/xen-multi-page-ring - patches.xen/xen-balloon-max-target - patches.xen/xen-blkback-multi-page-ring - patches.xen/xen-blkback-indirect - patches.xen/xen-blkback-cdrom - patches.xen/xen-blkif-protocol-fallback-hack - patches.xen/xen-blkfront-multi-page-ring - patches.xen/xen-blkfront-indirect - patches.xen/xen-blkif-op-packet - patches.xen/xen-blkfront-cdrom - patches.xen/xen-blkfront-hvm-no-cdrom - patches.xen/xen-blktap-modular - patches.xen/xen-blktap-write-barriers - patches.xen/xen-blktap2-configurable-nr-devs - patches.xen/xen-netback-defer-netdev-destruction - patches.xen/xen-netback-notify-multi - patches.xen/xen-netback-generalize - patches.xen/xen-netback-multiple-tasklets - patches.xen/xen-netback-kernel-threads - patches.xen/xen-netback-tx-queue-len - patches.xen/xen-netback-coalesce - patches.xen/xen-vscsi-large-requests - patches.xen/xen-cxgb3 - patches.xen/xen-dcdbas - patches.xen/xen-pv-on-hvm-skip-initialization-of-emulated-devices - patches.xen/xen-x86-panic-no-reboot - patches.xen/xen-x86-dcr-fallback - patches.xen/xen-x86-no-lapic - patches.xen/xen-x86-pmd-handling - patches.xen/xen-x86-bigmem - patches.xen/xen-x86-exit-mmap - patches.xen/xen-x86-per-cpu-vcpu-info - patches.xen/xen-x86-pcpu - patches.xen/xen-x86-EFI - patches.xen/xen-x86-bzImage - patches.xen/xen-x86_64-pgd-pin - patches.xen/xen-x86_64-pgd-alloc-order - patches.xen/xen-x86_64-dump-user-pgt - patches.xen/xen-x86_64-note-init-p2m - patches.xen/xen-x86_64-unmapped-initrd - patches.xen/xen-x86_64-vread-pvclock - patches.xen/xen-x86_64-m2p-strict ++++++ source-timestamp ++++++ --- /var/tmp/diff_new_pack.QAgBbK/_old 2015-12-18 21:53:56.000000000 +0100 +++ /var/tmp/diff_new_pack.QAgBbK/_new 2015-12-18 21:53:56.000000000 +0100 @@ -1,3 +1,3 @@ -2015-11-14 17:19:19 +0100 -GIT Revision: 734b32cf0922caa8e74d631ca38a9a342ba72fcc +2015-12-16 09:03:35 +0100 +GIT Revision: db72752e2f44e81bcbc898376a0d051f247c1b67 GIT Branch: stable
