Hello community,

here is the log from the commit of package kernel-source for openSUSE:Factory 
checked in at 2015-11-06 00:04:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-02 12:54:26.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-debug.changes  
2015-11-06 00:04:04.000000000 +0100
@@ -1,0 +2,13 @@
+Mon Nov  2 16:34:24 CET 2015 - [email protected]
+
+- rpm/kernel-binary.spec.in: sync with master
+- commit 7b374a4
+
+-------------------------------------------------------------------
+Mon Nov  2 15:00:23 CET 2015 - [email protected]
+
+- Update to 4.3-final.
+  - 1 patch eliminated.
+- commit e20b856
+
+-------------------------------------------------------------------
@@ -12 +25 @@
-- commit ef2823b
+- commit 1b5a73d
@@ -47,0 +61,2 @@
+- config: arm: Enable ADS7846 touchscreen driver
+  This SPI connected chip is common on RPi TFT displays.
@@ -70,0 +86,2 @@
+- [media] media/vivid-osd: fix info leak in ioctl (CVE-2015-7884,
+  bnc#951626).
@@ -75 +92 @@
-- commit 8031e24
+- commit f554650
@@ -85,0 +103,14 @@
+Thu Oct 22 08:34:29 CEST 2015 - [email protected]
+
+- supported.conf: Add pv-ops Xen drivers, 8250-base, and xhci-pci.
+- commit ff3f596
+
+-------------------------------------------------------------------
+Wed Oct 21 15:55:58 CEST 2015 - [email protected]
+
+- config: arm: Enable CONFIG_PPS_CLIENT_GPIO
+  Set CONFIG_PPS_CLIENT_GPIO=m for all ARM configs to be able to use GPS
+  with PPS line connected to a GPIO, as a high-precision time reference.
+- commit f01eb6a
+
+-------------------------------------------------------------------
@@ -98,0 +130,22 @@
+Tue Oct 20 20:33:33 CEST 2015 - [email protected]
+
+- Disable leftover CONFIG_FW_LOADER_USER_HELPER_FALLBACK in armv7hl/* 
(boo#951260)
+- commit 007f6ba
+
+-------------------------------------------------------------------
+Tue Oct 20 20:32:31 CEST 2015 - [email protected]
+
+- [media] c8sectpfe: Remove select on
+  CONFIG_FW_LOADER_USER_HELPER_FALLBACK (boo#951260).
+- drm/sti: Remove select of CONFIG_FW_LOADER_USER_HELPER_FALLBACK
+  (boo#951260).
+- commit 23d5c78
+
+-------------------------------------------------------------------
+Tue Oct 20 17:19:55 CEST 2015 - [email protected]
+
+- Disable CONFIG_RT_GROUP_SCHED (boo#950955)
+  Even people originally demanded suggest to drop it now...
+- commit 58efde7
+
+-------------------------------------------------------------------
@@ -111,0 +165,21 @@
+Mon Oct 19 19:25:24 CEST 2015 - [email protected]
+
+- config: Re-enable DEBUG_INFO on ec2 flavors.
+  It was disabled in commit a104accda85, but is enabled explicitly in the
+  spec file.  The options that depend on it must be in the config file for
+  the build to succeed.
+- commit 4415ce9
+
+-------------------------------------------------------------------
+Mon Oct 19 19:00:18 CEST 2015 - [email protected]
+
+- Update to 4.3-rc6.
+- commit d6b2a93
+
+-------------------------------------------------------------------
+Fri Oct 16 16:34:28 CEST 2015 - [email protected]
+
+- Delete unused rpm/config-subst.
+- commit 01841f4
+
+-------------------------------------------------------------------
@@ -144,0 +219,21 @@
+Thu Oct 15 16:28:49 CEST 2015 - [email protected]
+
+- Update Xen patches to 4.3-rc5 and c/s 1293.
+- netback: coalesce (guest) RX SKBs as needed (bsc#919154).
+- config.conf: Re-enable Xen and PV configs.
+- Update config files.
+- commit a104acc
+
+-------------------------------------------------------------------
+Wed Oct 14 21:30:18 CEST 2015 - [email protected]
+
+- config: armv7hl: Enable new OMAP serial driver
+- commit 54af7c7
+
+-------------------------------------------------------------------
+Mon Oct 12 16:01:33 CEST 2015 - [email protected]
+
+- Update to 4.3-rc5.
+- commit 36c0ed4
+
+-------------------------------------------------------------------
@@ -151,0 +247,36 @@
+Mon Oct  5 13:40:15 CEST 2015 - [email protected]
+
+- Update config files.
+  Disable CONFIG_LEDS_BCM6328 and CONFIG_LEDS_BCM6358, as those
+  are MIPS and unlikely to exist on an ARM board.
+- commit efc53bd
+
+-------------------------------------------------------------------
+Mon Oct  5 05:22:22 CEST 2015 - [email protected]
+
+- Update to 4.3-rc4.
+- commit 48d7e75
+
+-------------------------------------------------------------------
+Sun Oct  4 21:19:16 CEST 2015 - [email protected]
+
+- config: armv7hl: Sync vanilla with default
+  Let vanilla follow changes made in default.
+- commit 00ad273
+
+-------------------------------------------------------------------
+Sun Oct  4 20:06:44 CEST 2015 - [email protected]
+
+- config: armv7hl: Disable all msm8916/apq8016 options
+  They are arm64 SoCs, so not needed for armv7hl.
+- commit b333226
+
+-------------------------------------------------------------------
+Sun Oct  4 18:09:55 CEST 2015 - [email protected]
+
+- config: armv7hl: Enable preemption
+  This patch is to follow 1fcdac3f3d277ffea3462af635a3dea6b854a09a.
+  [AF/MK: Enable preemption for vanilla config as well]
+- commit d795f96
+
+-------------------------------------------------------------------
@@ -163,0 +295,3 @@
+- config: armv7hl: Enable missing STMMAC Ethernet options
+  This attempts to fix regressions from 4.1 like built-in Ethernet on
+  Cubietruck not working.
@@ -170 +304 @@
-- commit 35c44c6
+- commit 7a85c9f
@@ -177 +311,8 @@
-- commit 1193b90
+- commit fee03a3
+
+-------------------------------------------------------------------
+Wed Sep 30 02:34:37 CEST 2015 - [email protected]
+
+- Update config files. (bsc#947816)
+  Put # CONFIG_KEXEC_VERIFY_SIG is not set (bsc#947816)
+- commit ab4942d
@@ -186,0 +328,7 @@
+Wed Sep 30 01:37:00 CEST 2015 - [email protected]
+
+- Update to 4.3-rc3.
+- Eliminated 1 patch.
+- commit 66bc908
+
+-------------------------------------------------------------------
@@ -204,0 +353,7 @@
+Fri Sep 25 22:51:28 CEST 2015 - [email protected]
+
+- Delete patches.suse/kconfig-automate-kernel-desktop.
+  No longer needed.
+- commit 74bcdcc
+
+-------------------------------------------------------------------
@@ -216,0 +372,29 @@
+Wed Sep 23 14:41:58 CEST 2015 - [email protected]
+
+- Backport of https://lkml.org/lkml/2015/9/11/507
+  Fixes a build issue with aarch64, see
+  http://www.spinics.net/lists/arm-kernel/msg446809.html.
+- Update config files.
+- commit 2947252
+
+-------------------------------------------------------------------
+Wed Sep 23 13:49:33 CEST 2015 - [email protected]
+
+- Delete
+  
patches.arch/arm64-0007-arm64-Do-not-call-enable-PCI-resources-when-specify-.patch.
+- commit a608d6a
+
+-------------------------------------------------------------------
+Wed Sep 23 13:47:42 CEST 2015 - [email protected]
+
+- Update x86 config files: CONFIG_SURFACE_PRO3_BUTTON=m
++++ 206 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/kernel-source/kernel-debug.changes
++++ and /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-debug.changes
kernel-default.changes: same change
kernel-docs.changes: same change
kernel-ec2.changes: same change
kernel-lpae.changes: same change
kernel-obs-build.changes: same change
kernel-obs-qa-xen.changes: same change
kernel-obs-qa.changes: same change
kernel-pae.changes: same change
kernel-pv.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-vanilla.changes: same change
kernel-xen.changes: same change

Old:
----
  linux-4.2.tar.xz

New:
----
  linux-4.3.tar.xz

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

Other differences:
------------------
++++++ kernel-debug.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:16.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:16.000000000 +0100
@@ -19,8 +19,8 @@
 # This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
 # needssslcertforbuild
 
-%define srcversion 4.2
-%define patchversion 4.2.5
+%define srcversion 4.3
+%define patchversion 4.3.0
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        A Debug Version of the Kernel
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif
@@ -530,6 +530,11 @@
 %if %CONFIG_EFI_STUB == "y"
 BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
 %endif
+%ifarch %ix86
+# XXX: do not sign on x86, as the repackaging changes kernel-pae
+# from i686 to i586
+BRP_PESIGN_FILES=""
+%endif
 
 # get rid of /usr/lib/rpm/brp-strip-debug
 # strip removes too much from the vmlinux ELF binary

kernel-default.spec: same change
++++++ kernel-docs.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:16.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:16.000000000 +0100
@@ -16,7 +16,7 @@
 #
 
 
-%define patchversion 4.2.5
+%define patchversion 4.3.0
 %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.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif

++++++ kernel-ec2.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -19,8 +19,8 @@
 # This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
 # needssslcertforbuild
 
-%define srcversion 4.2
-%define patchversion 4.2.5
+%define srcversion 4.3
+%define patchversion 4.3.0
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        The Amazon EC2 Xen Kernel
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif
@@ -526,6 +526,11 @@
 %if %CONFIG_EFI_STUB == "y"
 BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
 %endif
+%ifarch %ix86
+# XXX: do not sign on x86, as the repackaging changes kernel-pae
+# from i686 to i586
+BRP_PESIGN_FILES=""
+%endif
 
 # get rid of /usr/lib/rpm/brp-strip-debug
 # strip removes too much from the vmlinux ELF binary

kernel-lpae.spec: same change
++++++ kernel-obs-build.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -19,7 +19,7 @@
 
 #!BuildIgnore: post-build-checks
 
-%define patchversion 4.2.5
+%define patchversion 4.3.0
 %define variant %{nil}
 
 %include %_sourcedir/kernel-spec-macros
@@ -45,9 +45,9 @@
 Summary:        package kernel and initrd for OBS VM builds
 License:        GPL-2.0
 Group:          SLES
-Version:        4.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif

++++++ kernel-obs-qa-xen.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -17,7 +17,7 @@
 # needsrootforbuild
 
 
-%define patchversion 4.2.5
+%define patchversion 4.3.0
 %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.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif

kernel-obs-qa.spec: same change
++++++ kernel-pae.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -19,8 +19,8 @@
 # This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
 # needssslcertforbuild
 
-%define srcversion 4.2
-%define patchversion 4.2.5
+%define srcversion 4.3
+%define patchversion 4.3.0
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        Kernel with PAE Support
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif
@@ -542,6 +542,11 @@
 %if %CONFIG_EFI_STUB == "y"
 BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
 %endif
+%ifarch %ix86
+# XXX: do not sign on x86, as the repackaging changes kernel-pae
+# from i686 to i586
+BRP_PESIGN_FILES=""
+%endif
 
 # get rid of /usr/lib/rpm/brp-strip-debug
 # strip removes too much from the vmlinux ELF binary

++++++ kernel-pv.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -19,8 +19,8 @@
 # This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
 # needssslcertforbuild
 
-%define srcversion 4.2
-%define patchversion 4.2.5
+%define srcversion 4.3
+%define patchversion 4.3.0
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        The para-virtualized Kernel
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif
@@ -525,6 +525,11 @@
 %if %CONFIG_EFI_STUB == "y"
 BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
 %endif
+%ifarch %ix86
+# XXX: do not sign on x86, as the repackaging changes kernel-pae
+# from i686 to i586
+BRP_PESIGN_FILES=""
+%endif
 
 # get rid of /usr/lib/rpm/brp-strip-debug
 # strip removes too much from the vmlinux ELF binary

++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -17,8 +17,8 @@
 # icecream 0
 
 
-%define srcversion 4.2
-%define patchversion 4.2.5
+%define srcversion 4.3
+%define patchversion 4.3.0
 %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.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif

++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -24,10 +24,10 @@
 Summary:        Kernel Symbol Versions (modversions)
 License:        GPL-2.0
 Group:          Development/Sources
-Version:        4.2.5
+Version:        4.3.0
 %if %using_buildservice
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif

++++++ kernel-vanilla.spec ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -19,8 +19,8 @@
 # This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
 # needssslcertforbuild
 
-%define srcversion 4.2
-%define patchversion 4.2.5
+%define srcversion 4.3
+%define patchversion 4.3.0
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -58,9 +58,9 @@
 Summary:        The Standard Kernel - without any SUSE patches
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        4.2.5
+Version:        4.3.0
 %if 0%{?is_kotd}
-Release:        <RELEASE>.g0491388
+Release:        <RELEASE>.g7b374a4
 %else
 Release:        0
 %endif
@@ -523,6 +523,11 @@
 %if %CONFIG_EFI_STUB == "y"
 BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
 %endif
+%ifarch %ix86
+# XXX: do not sign on x86, as the repackaging changes kernel-pae
+# from i686 to i586
+BRP_PESIGN_FILES=""
+%endif
 
 # get rid of /usr/lib/rpm/brp-strip-debug
 # strip removes too much from the vmlinux ELF binary

kernel-xen.spec: same change
++++++ config.sh ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:17.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:17.000000000 +0100
@@ -1,5 +1,5 @@
 # The version of the main tarball to use
-SRCVERSION=4.2
+SRCVERSION=4.3
 # variant of the kernel-source package, either empty or "-rt"
 VARIANT=
 # buildservice projects to build the kernel against

++++++ config.tar.bz2 ++++++
++++ 23791 lines of diff (skipped)

++++++ kernel-binary.spec.in ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:18.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:18.000000000 +0100
@@ -399,6 +399,11 @@
 %if %CONFIG_EFI_STUB == "y"
 BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
 %endif
+%ifarch %ix86
+# XXX: do not sign on x86, as the repackaging changes kernel-pae
+# from i686 to i586
+BRP_PESIGN_FILES=""
+%endif
 
 # get rid of /usr/lib/rpm/brp-strip-debug
 # strip removes too much from the vmlinux ELF binary

++++++ linux-4.2.tar.xz -> linux-4.3.tar.xz ++++++
/work/SRC/openSUSE:Factory/kernel-source/linux-4.2.tar.xz 
/work/SRC/openSUSE:Factory/.kernel-source.new/linux-4.3.tar.xz differ: char 26, 
line 1

++++++ patches.arch.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.arch/arm64-0004-net-xgbe-Add-A0-silicon-support.patch 
new/patches.arch/arm64-0004-net-xgbe-Add-A0-silicon-support.patch
--- old/patches.arch/arm64-0004-net-xgbe-Add-A0-silicon-support.patch   
2015-07-06 22:44:45.000000000 +0200
+++ new/patches.arch/arm64-0004-net-xgbe-Add-A0-silicon-support.patch   
2015-09-30 01:37:00.000000000 +0200
@@ -10369,12 +10369,13 @@
 +#endif
 --- a/drivers/net/phy/Makefile
 +++ b/drivers/net/phy/Makefile
-@@ -34,4 +34,5 @@ obj-$(CONFIG_MDIO_BUS_MUX_MMIOREG) += md
+@@ -34,5 +34,6 @@ obj-$(CONFIG_MDIO_BUS_MUX_MMIOREG) += md
  obj-$(CONFIG_MDIO_BUS_MUX_MMIOREG) += mdio-mux-mmioreg.o
  obj-$(CONFIG_MDIO_SUN4I)      += mdio-sun4i.o
  obj-$(CONFIG_MDIO_MOXART)     += mdio-moxart.o
 +obj-$(CONFIG_AMD_XGBE_PHY)    += amd-xgbe-phy-a0.o
  obj-$(CONFIG_MDIO_BCM_UNIMAC) += mdio-bcm-unimac.o
+ obj-$(CONFIG_MICROCHIP_PHY)   += microchip.o
 --- /dev/null
 +++ b/drivers/net/phy/amd-xgbe-phy-a0.c
 @@ -0,0 +1,1800 @@
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.arch/arm64-0006-arm64-Select-reboot-driver-for-X-Gene-platform.patch
 
new/patches.arch/arm64-0006-arm64-Select-reboot-driver-for-X-Gene-platform.patch
--- 
old/patches.arch/arm64-0006-arm64-Select-reboot-driver-for-X-Gene-platform.patch
    2015-07-06 22:44:45.000000000 +0200
+++ 
new/patches.arch/arm64-0006-arm64-Select-reboot-driver-for-X-Gene-platform.patch
    2015-09-30 01:37:00.000000000 +0200
@@ -16,8 +16,8 @@
 
 diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
 index 9532f8d..d9784c8 100644
---- a/arch/arm64/Kconfig
-+++ b/arch/arm64/Kconfig
+--- a/arch/arm64/Kconfig.platforms
++++ b/arch/arm64/Kconfig.platforms
 @@ -159,6 +159,8 @@ config ARCH_VEXPRESS
  
  config ARCH_XGENE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.arch/arm64-0007-arm64-Do-not-call-enable-PCI-resources-when-specify-.patch
 
new/patches.arch/arm64-0007-arm64-Do-not-call-enable-PCI-resources-when-specify-.patch
--- 
old/patches.arch/arm64-0007-arm64-Do-not-call-enable-PCI-resources-when-specify-.patch
      2015-07-06 22:44:45.000000000 +0200
+++ 
new/patches.arch/arm64-0007-arm64-Do-not-call-enable-PCI-resources-when-specify-.patch
      1970-01-01 01:00:00.000000000 +0100
@@ -1,44 +0,0 @@
-From 64cca9d43139d05744b8be00ccf54d42e58d278f Mon Sep 17 00:00:00 2001
-From: Suravee Suthikulpanit <[email protected]>
-Date: Sun, 28 Sep 2014 15:53:29 -0500
-Subject: [PATCH 07/10] arm64: Do not call enable PCI resources when specify
- PCI_PROBE_ONLY
-Patch-mainline: No
-References: bnc#902632
-
-When specify PCI_PROBE_ONLY, the resource parent does not get assigned.
-Therefore, pci_enable_resources() return error saying that
-"BAR x not claimed".
-
-Note: This same logic is also used in the arch/arm/kernel/bios32.c
-
-Cc: Liviu Dudau <[email protected]>
-Cc: Bjorn Helgaas <[email protected]>
-Cc: Will Deacon <[email protected]>
-Cc: Catalin Marinas <[email protected]>
-Signed-off-by: Suravee Suthikulpanit <[email protected]>
-Signed-off-by: Alexander Graf <[email protected]>
-
----
- arch/arm64/kernel/pci.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c
-index ce5836c..7fd4d2b 100644
---- a/arch/arm64/kernel/pci.c
-+++ b/arch/arm64/kernel/pci.c
-@@ -68,3 +68,11 @@ void pci_bus_assign_domain_nr(struct pci_bus *bus, struct 
device *parent)
-       return NULL;
- }
- #endif
-+
-+int pcibios_enable_device(struct pci_dev *dev, int mask)
-+{
-+      if (pci_has_flag(PCI_PROBE_ONLY))
-+              return 0;
-+
-+      return pci_enable_resources(dev, mask);
-+}
--- 
-2.1.0
-

++++++ patches.drivers.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/0001-qmi_wwan-Add-support-for-Dell-Wireless-5809e-4G-Mode.patch
 
new/patches.drivers/0001-qmi_wwan-Add-support-for-Dell-Wireless-5809e-4G-Mode.patch
--- 
old/patches.drivers/0001-qmi_wwan-Add-support-for-Dell-Wireless-5809e-4G-Mode.patch
 2015-10-28 08:49:09.000000000 +0100
+++ 
new/patches.drivers/0001-qmi_wwan-Add-support-for-Dell-Wireless-5809e-4G-Mode.patch
 1970-01-01 01:00:00.000000000 +0100
@@ -1,35 +0,0 @@
-From 22ebbe4c34da96f1e283baae5956e39d629c18a3 Mon Sep 17 00:00:00 2001
-From: Pieter Hollants <[email protected]>
-Date: Mon, 20 Jul 2015 10:14:13 +0200
-Subject: [PATCH] qmi_wwan: Add support for Dell Wireless 5809e 4G Modem
-References: bnc#937974
-Git-Commit: 2070c48cf2b78af89ba529c00992eaaa18df8ef7
-Patch-Mainline: Queued in subsystem maintainer repository
-Git-repo: http://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git
-
-Added the USB IDs 0x413c:0x81b1 for the "Dell Wireless 5809e Gobi(TM) 4G
-LTE Mobile Broadband Card", a Dell-branded Sierra Wireless EM7305 LTE
-card in M.2 form factor, used eg. in Dell's Latitude E7540 Notebook
-series.
-
-Signed-off-by: Pieter Hollants <[email protected]>
-Signed-off-by: Oliver Neukum <[email protected]>
----
- drivers/net/usb/qmi_wwan.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/net/usb/qmi_wwan.c b/drivers/net/usb/qmi_wwan.c
-index f603f36..f06c687 100644
---- a/drivers/net/usb/qmi_wwan.c
-+++ b/drivers/net/usb/qmi_wwan.c
-@@ -784,6 +784,7 @@ static const struct usb_device_id products[] = {
-       {QMI_FIXED_INTF(0x413c, 0x81a4, 8)},    /* Dell Wireless 5570e HSPA+ 
(42Mbps) Mobile Broadband Card */
-       {QMI_FIXED_INTF(0x413c, 0x81a8, 8)},    /* Dell Wireless 5808 Gobi(TM) 
4G LTE Mobile Broadband Card */
-       {QMI_FIXED_INTF(0x413c, 0x81a9, 8)},    /* Dell Wireless 5808e Gobi(TM) 
4G LTE Mobile Broadband Card */
-+      {QMI_FIXED_INTF(0x413c, 0x81b1, 8)},    /* Dell Wireless 5809e Gobi(TM) 
4G LTE Mobile Broadband Card */
-       {QMI_FIXED_INTF(0x03f0, 0x4e1d, 8)},    /* HP lt4111 LTE/EV-DO/HSPA+ 
Gobi 4G Module */
-       {QMI_FIXED_INTF(0x03f0, 0x581d, 4)},    /* HP lt4112 LTE/HSPA+ Gobi 4G 
Module (Huawei me906e) */
- 
--- 
-2.1.4
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/0001-vmwgfx-Rework-device-initialization.patch 
new/patches.drivers/0001-vmwgfx-Rework-device-initialization.patch
--- old/patches.drivers/0001-vmwgfx-Rework-device-initialization.patch  
2015-10-28 08:49:09.000000000 +0100
+++ new/patches.drivers/0001-vmwgfx-Rework-device-initialization.patch  
1970-01-01 01:00:00.000000000 +0100
@@ -1,872 +0,0 @@
-From 153b3d5b037eeb01d1e5610958a5bbd79885b2be Mon Sep 17 00:00:00 2001
-From: Thomas Hellstrom <[email protected]>
-Date: Thu, 25 Jun 2015 10:47:43 -0700
-Subject: [PATCH]  vmwgfx: Rework device initialization
-Git-commit: 153b3d5b037eeb01d1e5610958a5bbd79885b2be
-Patch-mainline: v4.3-rc1
-References: boo#934266
-
-This commit reworks device initialization so that we always enable the
-FIFO at driver load, deferring SVGA enable until either first modeset
-or fbdev enable.
-This should always leave the fifo properly enabled for render- and
-control nodes.
-In addition,
-*) We disable the use of VRAM when SVGA is not enabled.
-*) We simplify PM support so that we only throw out resources on hibernate,
-not on suspend, since the device keeps its state on suspend.
-
-Signed-off-by: Thomas Hellstrom <[email protected]>
-Reviewed-by: Sinclair Yeh <[email protected]>
-Acked-by: Takashi Iwai <[email protected]>
-
----
- drivers/gpu/drm/vmwgfx/vmwgfx_context.c |    8 
- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c     |  337 
+++++++++++++++++---------------
- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h     |   19 +
- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c      |    4 
- drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c    |   12 -
- drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c     |    1 
- drivers/gpu/drm/vmwgfx/vmwgfx_mob.c     |    6 
- drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c    |    1 
- drivers/gpu/drm/vmwgfx/vmwgfx_shader.c  |    4 
- drivers/gpu/drm/vmwgfx/vmwgfx_surface.c |   12 -
- 10 files changed, 230 insertions(+), 174 deletions(-)
-
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_context.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_context.c
-@@ -140,7 +140,7 @@ static void vmw_hw_context_destroy(struc
-       cmd->body.cid = cpu_to_le32(res->id);
- 
-       vmw_fifo_commit(dev_priv, sizeof(*cmd));
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
- }
- 
- static int vmw_gb_context_init(struct vmw_private *dev_priv,
-@@ -220,7 +220,7 @@ static int vmw_context_init(struct vmw_p
-       cmd->body.cid = cpu_to_le32(res->id);
- 
-       vmw_fifo_commit(dev_priv, sizeof(*cmd));
--      (void) vmw_3d_resource_inc(dev_priv, false);
-+      vmw_fifo_resource_inc(dev_priv);
-       vmw_resource_activate(res, vmw_hw_context_destroy);
-       return 0;
- 
-@@ -281,7 +281,7 @@ static int vmw_gb_context_create(struct
-       cmd->header.size = sizeof(cmd->body);
-       cmd->body.cid = res->id;
-       vmw_fifo_commit(dev_priv, sizeof(*cmd));
--      (void) vmw_3d_resource_inc(dev_priv, false);
-+      vmw_fifo_resource_inc(dev_priv);
- 
-       return 0;
- 
-@@ -414,7 +414,7 @@ static int vmw_gb_context_destroy(struct
-       if (dev_priv->query_cid == res->id)
-               dev_priv->query_cid_valid = false;
-       vmw_resource_release_id(res);
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
- 
-       return 0;
- }
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
-@@ -339,24 +339,47 @@ static int vmw_dummy_query_bo_create(str
-       return ret;
- }
- 
--static int vmw_request_device(struct vmw_private *dev_priv)
-+/**
-+ * vmw_request_device_late - Perform late device setup
-+ *
-+ * @dev_priv: Pointer to device private.
-+ *
-+ * This function performs setup of otables and enables large command
-+ * buffer submission. These tasks are split out to a separate function
-+ * because it reverts vmw_release_device_early and is intended to be used
-+ * by an error path in the hibernation code.
-+ */
-+static int vmw_request_device_late(struct vmw_private *dev_priv)
- {
-       int ret;
- 
--      ret = vmw_fifo_init(dev_priv, &dev_priv->fifo);
--      if (unlikely(ret != 0)) {
--              DRM_ERROR("Unable to initialize FIFO.\n");
--              return ret;
--      }
--      vmw_fence_fifo_up(dev_priv->fman);
-       if (dev_priv->has_mob) {
-               ret = vmw_otables_setup(dev_priv);
-               if (unlikely(ret != 0)) {
-                       DRM_ERROR("Unable to initialize "
-                                 "guest Memory OBjects.\n");
--                      goto out_no_mob;
-+                      return ret;
-               }
-       }
-+
-+      return 0;
-+}
-+
-+static int vmw_request_device(struct vmw_private *dev_priv)
-+{
-+      int ret;
-+
-+      ret = vmw_fifo_init(dev_priv, &dev_priv->fifo);
-+      if (unlikely(ret != 0)) {
-+              DRM_ERROR("Unable to initialize FIFO.\n");
-+              return ret;
-+      }
-+      vmw_fence_fifo_up(dev_priv->fman);
-+
-+      ret = vmw_request_device_late(dev_priv);
-+      if (ret)
-+              goto out_no_mob;
-+
-       ret = vmw_dummy_query_bo_create(dev_priv);
-       if (unlikely(ret != 0))
-               goto out_no_query_bo;
-@@ -364,15 +387,25 @@ static int vmw_request_device(struct vmw
-       return 0;
- 
- out_no_query_bo:
--      if (dev_priv->has_mob)
-+      if (dev_priv->has_mob) {
-+              (void) ttm_bo_evict_mm(&dev_priv->bdev, VMW_PL_MOB);
-               vmw_otables_takedown(dev_priv);
-+      }
- out_no_mob:
-       vmw_fence_fifo_down(dev_priv->fman);
-       vmw_fifo_release(dev_priv, &dev_priv->fifo);
-       return ret;
- }
- 
--static void vmw_release_device(struct vmw_private *dev_priv)
-+/**
-+ * vmw_release_device_early - Early part of fifo takedown.
-+ *
-+ * @dev_priv: Pointer to device private struct.
-+ *
-+ * This is the first part of command submission takedown, to be called before
-+ * buffer management is taken down.
-+ */
-+static void vmw_release_device_early(struct vmw_private *dev_priv)
- {
-       /*
-        * Previous destructions should've released
-@@ -382,64 +415,24 @@ static void vmw_release_device(struct vm
-       BUG_ON(dev_priv->pinned_bo != NULL);
- 
-       ttm_bo_unref(&dev_priv->dummy_query_bo);
--      if (dev_priv->has_mob)
-+      if (dev_priv->has_mob) {
-+              ttm_bo_evict_mm(&dev_priv->bdev, VMW_PL_MOB);
-               vmw_otables_takedown(dev_priv);
--      vmw_fence_fifo_down(dev_priv->fman);
--      vmw_fifo_release(dev_priv, &dev_priv->fifo);
--}
--
--
--/**
-- * Increase the 3d resource refcount.
-- * If the count was prevously zero, initialize the fifo, switching to svga
-- * mode. Note that the master holds a ref as well, and may request an
-- * explicit switch to svga mode if fb is not running, using @unhide_svga.
-- */
--int vmw_3d_resource_inc(struct vmw_private *dev_priv,
--                      bool unhide_svga)
--{
--      int ret = 0;
--
--      mutex_lock(&dev_priv->release_mutex);
--      if (unlikely(dev_priv->num_3d_resources++ == 0)) {
--              ret = vmw_request_device(dev_priv);
--              if (unlikely(ret != 0))
--                      --dev_priv->num_3d_resources;
--      } else if (unhide_svga) {
--              vmw_write(dev_priv, SVGA_REG_ENABLE,
--                        vmw_read(dev_priv, SVGA_REG_ENABLE) &
--                        ~SVGA_REG_ENABLE_HIDE);
-       }
--
--      mutex_unlock(&dev_priv->release_mutex);
--      return ret;
- }
- 
- /**
-- * Decrease the 3d resource refcount.
-- * If the count reaches zero, disable the fifo, switching to vga mode.
-- * Note that the master holds a refcount as well, and may request an
-- * explicit switch to vga mode when it releases its refcount to account
-- * for the situation of an X server vt switch to VGA with 3d resources
-- * active.
-+ * vmw_release_device_late - Late part of fifo takedown.
-+ *
-+ * @dev_priv: Pointer to device private struct.
-+ *
-+ * This is the last part of the command submission takedown, to be called when
-+ * command submission is no longer needed. It may wait on pending fences.
-  */
--void vmw_3d_resource_dec(struct vmw_private *dev_priv,
--                       bool hide_svga)
-+static void vmw_release_device_late(struct vmw_private *dev_priv)
- {
--      int32_t n3d;
--
--      mutex_lock(&dev_priv->release_mutex);
--      if (unlikely(--dev_priv->num_3d_resources == 0))
--              vmw_release_device(dev_priv);
--      else if (hide_svga)
--              vmw_write(dev_priv, SVGA_REG_ENABLE,
--                        vmw_read(dev_priv, SVGA_REG_ENABLE) |
--                        SVGA_REG_ENABLE_HIDE);
--
--      n3d = (int32_t) dev_priv->num_3d_resources;
--      mutex_unlock(&dev_priv->release_mutex);
--
--      BUG_ON(n3d < 0);
-+      vmw_fence_fifo_down(dev_priv->fman);
-+      vmw_fifo_release(dev_priv, &dev_priv->fifo);
- }
- 
- /**
-@@ -603,6 +596,7 @@ static int vmw_driver_load(struct drm_de
-       spin_lock_init(&dev_priv->hw_lock);
-       spin_lock_init(&dev_priv->waiter_lock);
-       spin_lock_init(&dev_priv->cap_lock);
-+      spin_lock_init(&dev_priv->svga_lock);
- 
-       for (i = vmw_res_context; i < vmw_res_max; ++i) {
-               idr_init(&dev_priv->res_idr[i]);
-@@ -714,17 +708,6 @@ static int vmw_driver_load(struct drm_de
-       dev_priv->active_master = &dev_priv->fbdev_master;
- 
- 
--      ret = ttm_bo_device_init(&dev_priv->bdev,
--                               dev_priv->bo_global_ref.ref.object,
--                               &vmw_bo_driver,
--                               dev->anon_inode->i_mapping,
--                               VMWGFX_FILE_PAGE_OFFSET,
--                               false);
--      if (unlikely(ret != 0)) {
--              DRM_ERROR("Failed initializing TTM buffer object driver.\n");
--              goto out_err1;
--      }
--
-       dev_priv->mmio_mtrr = arch_phys_wc_add(dev_priv->mmio_start,
-                                              dev_priv->mmio_size);
- 
-@@ -787,13 +770,28 @@ static int vmw_driver_load(struct drm_de
-               goto out_no_fman;
-       }
- 
-+      ret = ttm_bo_device_init(&dev_priv->bdev,
-+                               dev_priv->bo_global_ref.ref.object,
-+                               &vmw_bo_driver,
-+                               dev->anon_inode->i_mapping,
-+                               VMWGFX_FILE_PAGE_OFFSET,
-+                               false);
-+      if (unlikely(ret != 0)) {
-+              DRM_ERROR("Failed initializing TTM buffer object driver.\n");
-+              goto out_no_bdev;
-+      }
- 
-+      /*
-+       * Enable VRAM, but initially don't use it until SVGA is enabled and
-+       * unhidden.
-+       */
-       ret = ttm_bo_init_mm(&dev_priv->bdev, TTM_PL_VRAM,
-                            (dev_priv->vram_size >> PAGE_SHIFT));
-       if (unlikely(ret != 0)) {
-               DRM_ERROR("Failed initializing memory manager for VRAM.\n");
-               goto out_no_vram;
-       }
-+      dev_priv->bdev.man[TTM_PL_VRAM].use_type = false;
- 
-       dev_priv->has_gmr = true;
-       if (((dev_priv->capabilities & (SVGA_CAP_GMR | SVGA_CAP_GMR2)) == 0) ||
-@@ -814,18 +812,18 @@ static int vmw_driver_load(struct drm_de
-               }
-       }
- 
--      vmw_kms_save_vga(dev_priv);
--
--      /* Start kms and overlay systems, needs fifo. */
-       ret = vmw_kms_init(dev_priv);
-       if (unlikely(ret != 0))
-               goto out_no_kms;
-       vmw_overlay_init(dev_priv);
- 
-+      ret = vmw_request_device(dev_priv);
-+      if (ret)
-+              goto out_no_fifo;
-+
-       if (dev_priv->enable_fb) {
--              ret = vmw_3d_resource_inc(dev_priv, true);
--              if (unlikely(ret != 0))
--                      goto out_no_fifo;
-+              vmw_fifo_resource_inc(dev_priv);
-+              vmw_svga_enable(dev_priv);
-               vmw_fb_init(dev_priv);
-       }
- 
-@@ -838,13 +836,14 @@ out_no_fifo:
-       vmw_overlay_close(dev_priv);
-       vmw_kms_close(dev_priv);
- out_no_kms:
--      vmw_kms_restore_vga(dev_priv);
-       if (dev_priv->has_mob)
-               (void) ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_MOB);
-       if (dev_priv->has_gmr)
-               (void) ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_GMR);
-       (void)ttm_bo_clean_mm(&dev_priv->bdev, TTM_PL_VRAM);
- out_no_vram:
-+      (void)ttm_bo_device_release(&dev_priv->bdev);
-+out_no_bdev:
-       vmw_fence_manager_takedown(dev_priv->fman);
- out_no_fman:
-       if (dev_priv->capabilities & SVGA_CAP_IRQMASK)
-@@ -860,8 +859,6 @@ out_err4:
-       iounmap(dev_priv->mmio_virt);
- out_err3:
-       arch_phys_wc_del(dev_priv->mmio_mtrr);
--      (void)ttm_bo_device_release(&dev_priv->bdev);
--out_err1:
-       vmw_ttm_global_release(dev_priv);
- out_err0:
-       for (i = vmw_res_context; i < vmw_res_max; ++i)
-@@ -883,18 +880,22 @@ static int vmw_driver_unload(struct drm_
-       vfree(dev_priv->ctx.cmd_bounce);
-       if (dev_priv->enable_fb) {
-               vmw_fb_close(dev_priv);
--              vmw_kms_restore_vga(dev_priv);
--              vmw_3d_resource_dec(dev_priv, false);
-+              vmw_fifo_resource_dec(dev_priv);
-+              vmw_svga_disable(dev_priv);
-       }
-+
-       vmw_kms_close(dev_priv);
-       vmw_overlay_close(dev_priv);
- 
--      if (dev_priv->has_mob)
--              (void) ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_MOB);
-       if (dev_priv->has_gmr)
-               (void)ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_GMR);
-       (void)ttm_bo_clean_mm(&dev_priv->bdev, TTM_PL_VRAM);
- 
-+      vmw_release_device_early(dev_priv);
-+      if (dev_priv->has_mob)
-+              (void) ttm_bo_clean_mm(&dev_priv->bdev, VMW_PL_MOB);
-+      (void) ttm_bo_device_release(&dev_priv->bdev);
-+      vmw_release_device_late(dev_priv);
-       vmw_fence_manager_takedown(dev_priv->fman);
-       if (dev_priv->capabilities & SVGA_CAP_IRQMASK)
-               drm_irq_uninstall(dev_priv->dev);
-@@ -1148,27 +1149,13 @@ static int vmw_master_set(struct drm_dev
-       struct vmw_master *vmaster = vmw_master(file_priv->master);
-       int ret = 0;
- 
--      if (!dev_priv->enable_fb) {
--              ret = vmw_3d_resource_inc(dev_priv, true);
--              if (unlikely(ret != 0))
--                      return ret;
--              vmw_kms_save_vga(dev_priv);
--              vmw_write(dev_priv, SVGA_REG_TRACES, 0);
--      }
--
-       if (active) {
-               BUG_ON(active != &dev_priv->fbdev_master);
-               ret = ttm_vt_lock(&active->lock, false, vmw_fp->tfile);
-               if (unlikely(ret != 0))
--                      goto out_no_active_lock;
-+                      return ret;
- 
-               ttm_lock_set_kill(&active->lock, true, SIGTERM);
--              ret = ttm_bo_evict_mm(&dev_priv->bdev, TTM_PL_VRAM);
--              if (unlikely(ret != 0)) {
--                      DRM_ERROR("Unable to clean VRAM on "
--                                "master drop.\n");
--              }
--
-               dev_priv->active_master = NULL;
-       }
- 
-@@ -1182,14 +1169,6 @@ static int vmw_master_set(struct drm_dev
-       dev_priv->active_master = vmaster;
- 
-       return 0;
--
--out_no_active_lock:
--      if (!dev_priv->enable_fb) {
--              vmw_kms_restore_vga(dev_priv);
--              vmw_3d_resource_dec(dev_priv, true);
--              vmw_write(dev_priv, SVGA_REG_TRACES, 1);
--      }
--      return ret;
- }
- 
- static void vmw_master_drop(struct drm_device *dev,
-@@ -1214,16 +1193,9 @@ static void vmw_master_drop(struct drm_d
-       }
- 
-       ttm_lock_set_kill(&vmaster->lock, false, SIGTERM);
--      vmw_execbuf_release_pinned_bo(dev_priv);
- 
--      if (!dev_priv->enable_fb) {
--              ret = ttm_bo_evict_mm(&dev_priv->bdev, TTM_PL_VRAM);
--              if (unlikely(ret != 0))
--                      DRM_ERROR("Unable to clean VRAM on master drop.\n");
--              vmw_kms_restore_vga(dev_priv);
--              vmw_3d_resource_dec(dev_priv, true);
--              vmw_write(dev_priv, SVGA_REG_TRACES, 1);
--      }
-+      if (!dev_priv->enable_fb)
-+              vmw_svga_disable(dev_priv);
- 
-       dev_priv->active_master = &dev_priv->fbdev_master;
-       ttm_lock_set_kill(&dev_priv->fbdev_master.lock, false, SIGTERM);
-@@ -1233,6 +1205,74 @@ static void vmw_master_drop(struct drm_d
-               vmw_fb_on(dev_priv);
- }
- 
-+/**
-+ * __vmw_svga_enable - Enable SVGA mode, FIFO and use of VRAM.
-+ *
-+ * @dev_priv: Pointer to device private struct.
-+ * Needs the reservation sem to be held in non-exclusive mode.
-+ */
-+void __vmw_svga_enable(struct vmw_private *dev_priv)
-+{
-+      spin_lock(&dev_priv->svga_lock);
-+      if (!dev_priv->bdev.man[TTM_PL_VRAM].use_type) {
-+              vmw_write(dev_priv, SVGA_REG_ENABLE, SVGA_REG_ENABLE);
-+              dev_priv->bdev.man[TTM_PL_VRAM].use_type = true;
-+      }
-+      spin_unlock(&dev_priv->svga_lock);
-+}
-+
-+/**
-+ * vmw_svga_enable - Enable SVGA mode, FIFO and use of VRAM.
-+ *
-+ * @dev_priv: Pointer to device private struct.
-+ */
-+void vmw_svga_enable(struct vmw_private *dev_priv)
-+{
-+      ttm_read_lock(&dev_priv->reservation_sem, false);
-+      __vmw_svga_enable(dev_priv);
-+      ttm_read_unlock(&dev_priv->reservation_sem);
-+}
-+
-+/**
-+ * __vmw_svga_disable - Disable SVGA mode and use of VRAM.
-+ *
-+ * @dev_priv: Pointer to device private struct.
-+ * Needs the reservation sem to be held in exclusive mode.
-+ * Will not empty VRAM. VRAM must be emptied by caller.
-+ */
-+void __vmw_svga_disable(struct vmw_private *dev_priv)
-+{
-+      spin_lock(&dev_priv->svga_lock);
-+      if (dev_priv->bdev.man[TTM_PL_VRAM].use_type) {
-+              dev_priv->bdev.man[TTM_PL_VRAM].use_type = false;
-+              vmw_write(dev_priv, SVGA_REG_ENABLE,
-+                        SVGA_REG_ENABLE_ENABLE_HIDE);
-+      }
-+      spin_unlock(&dev_priv->svga_lock);
-+}
-+
-+/**
-+ * vmw_svga_disable - Disable SVGA_MODE, and use of VRAM. Keep the fifo
-+ * running.
-+ *
-+ * @dev_priv: Pointer to device private struct.
-+ * Will empty VRAM.
-+ */
-+void vmw_svga_disable(struct vmw_private *dev_priv)
-+{
-+      ttm_write_lock(&dev_priv->reservation_sem, false);
-+      spin_lock(&dev_priv->svga_lock);
-+      if (dev_priv->bdev.man[TTM_PL_VRAM].use_type) {
-+              dev_priv->bdev.man[TTM_PL_VRAM].use_type = false;
-+              vmw_write(dev_priv, SVGA_REG_ENABLE,
-+                        SVGA_REG_ENABLE_ENABLE_HIDE);
-+              spin_unlock(&dev_priv->svga_lock);
-+              if (ttm_bo_evict_mm(&dev_priv->bdev, TTM_PL_VRAM))
-+                      DRM_ERROR("Failed evicting VRAM buffers.\n");
-+      } else
-+              spin_unlock(&dev_priv->svga_lock);
-+      ttm_write_unlock(&dev_priv->reservation_sem);
-+}
- 
- static void vmw_remove(struct pci_dev *pdev)
- {
-@@ -1250,21 +1290,21 @@ static int vmwgfx_pm_notifier(struct not
- 
-       switch (val) {
-       case PM_HIBERNATION_PREPARE:
--      case PM_SUSPEND_PREPARE:
-               ttm_suspend_lock(&dev_priv->reservation_sem);
- 
--              /**
-+              /*
-                * This empties VRAM and unbinds all GMR bindings.
-                * Buffer contents is moved to swappable memory.
-                */
-               vmw_execbuf_release_pinned_bo(dev_priv);
-               vmw_resource_evict_all(dev_priv);
-+              vmw_release_device_early(dev_priv);
-               ttm_bo_swapout_all(&dev_priv->bdev);
--
-+              vmw_fence_fifo_down(dev_priv->fman);
-               break;
-       case PM_POST_HIBERNATION:
--      case PM_POST_SUSPEND:
-       case PM_POST_RESTORE:
-+              vmw_fence_fifo_up(dev_priv->fman);
-               ttm_suspend_unlock(&dev_priv->reservation_sem);
- 
-               break;
-@@ -1276,20 +1316,13 @@ static int vmwgfx_pm_notifier(struct not
-       return 0;
- }
- 
--/**
-- * These might not be needed with the virtual SVGA device.
-- */
--
- static int vmw_pci_suspend(struct pci_dev *pdev, pm_message_t state)
- {
-       struct drm_device *dev = pci_get_drvdata(pdev);
-       struct vmw_private *dev_priv = vmw_priv(dev);
- 
--      if (dev_priv->num_3d_resources != 0) {
--              DRM_INFO("Can't suspend or hibernate "
--                       "while 3D resources are active.\n");
-+      if (dev_priv->refuse_hibernation)
-               return -EBUSY;
--      }
- 
-       pci_save_state(pdev);
-       pci_disable_device(pdev);
-@@ -1321,56 +1354,62 @@ static int vmw_pm_resume(struct device *
-       return vmw_pci_resume(pdev);
- }
- 
--static int vmw_pm_prepare(struct device *kdev)
-+static int vmw_pm_freeze(struct device *kdev)
- {
-       struct pci_dev *pdev = to_pci_dev(kdev);
-       struct drm_device *dev = pci_get_drvdata(pdev);
-       struct vmw_private *dev_priv = vmw_priv(dev);
- 
--      /**
--       * Release 3d reference held by fbdev and potentially
--       * stop fifo.
--       */
-       dev_priv->suspended = true;
-       if (dev_priv->enable_fb)
--                      vmw_3d_resource_dec(dev_priv, true);
--
--      if (dev_priv->num_3d_resources != 0) {
--
--              DRM_INFO("Can't suspend or hibernate "
--                       "while 3D resources are active.\n");
-+              vmw_fifo_resource_dec(dev_priv);
- 
-+      if (atomic_read(&dev_priv->num_fifo_resources) != 0) {
-+              DRM_ERROR("Can't hibernate while 3D resources are active.\n");
-               if (dev_priv->enable_fb)
--                      vmw_3d_resource_inc(dev_priv, true);
-+                      vmw_fifo_resource_inc(dev_priv);
-+              WARN_ON(vmw_request_device_late(dev_priv));
-               dev_priv->suspended = false;
-               return -EBUSY;
-       }
- 
-+      if (dev_priv->enable_fb)
-+              __vmw_svga_disable(dev_priv);
-+      
-+      vmw_release_device_late(dev_priv);
-+
-       return 0;
- }
- 
--static void vmw_pm_complete(struct device *kdev)
-+static int vmw_pm_restore(struct device *kdev)
- {
-       struct pci_dev *pdev = to_pci_dev(kdev);
-       struct drm_device *dev = pci_get_drvdata(pdev);
-       struct vmw_private *dev_priv = vmw_priv(dev);
-+      int ret;
- 
-       vmw_write(dev_priv, SVGA_REG_ID, SVGA_ID_2);
-       (void) vmw_read(dev_priv, SVGA_REG_ID);
- 
--      /**
--       * Reclaim 3d reference held by fbdev and potentially
--       * start fifo.
--       */
-       if (dev_priv->enable_fb)
--                      vmw_3d_resource_inc(dev_priv, false);
-+              vmw_fifo_resource_inc(dev_priv);
-+
-+      ret = vmw_request_device(dev_priv);
-+      if (ret)
-+              return ret;
-+
-+      if (dev_priv->enable_fb)
-+              __vmw_svga_enable(dev_priv);
- 
-       dev_priv->suspended = false;
-+
-+      return 0;
- }
- 
- static const struct dev_pm_ops vmw_pm_ops = {
--      .prepare = vmw_pm_prepare,
--      .complete = vmw_pm_complete,
-+      .freeze = vmw_pm_freeze,
-+      .thaw = vmw_pm_restore,
-+      .restore = vmw_pm_restore,
-       .suspend = vmw_pm_suspend,
-       .resume = vmw_pm_resume,
- };
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
-@@ -484,6 +484,7 @@ struct vmw_private {
- 
-       bool stealth;
-       bool enable_fb;
-+      spinlock_t svga_lock;
- 
-       /**
-        * Master management.
-@@ -493,9 +494,10 @@ struct vmw_private {
-       struct vmw_master fbdev_master;
-       struct notifier_block pm_nb;
-       bool suspended;
-+      bool refuse_hibernation;
- 
-       struct mutex release_mutex;
--      uint32_t num_3d_resources;
-+      atomic_t num_fifo_resources;
- 
-       /*
-        * Replace this with an rwsem as soon as we have down_xx_interruptible()
-@@ -587,8 +589,9 @@ static inline uint32_t vmw_read(struct v
-       return val;
- }
- 
--int vmw_3d_resource_inc(struct vmw_private *dev_priv, bool unhide_svga);
--void vmw_3d_resource_dec(struct vmw_private *dev_priv, bool hide_svga);
-+extern void vmw_svga_enable(struct vmw_private *dev_priv);
-+extern void vmw_svga_disable(struct vmw_private *dev_priv);
-+
- 
- /**
-  * GMR utilities - vmwgfx_gmr.c
-@@ -1116,4 +1119,14 @@ static inline struct ttm_mem_global *vmw
- {
-       return (struct ttm_mem_global *) dev_priv->mem_global_ref.object;
- }
-+
-+static inline void vmw_fifo_resource_inc(struct vmw_private *dev_priv)
-+{
-+      atomic_inc(&dev_priv->num_fifo_resources);
-+}
-+
-+static inline void vmw_fifo_resource_dec(struct vmw_private *dev_priv)
-+{
-+      atomic_dec(&dev_priv->num_fifo_resources);
-+}
- #endif
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
-@@ -596,7 +596,10 @@ int vmw_fb_off(struct vmw_private *vmw_p
- 
-       info = vmw_priv->fb_info;
-       par = info->par;
-+      if (!par->bo_ptr)
-+              return 0;
- 
-+      vmw_kms_save_vga(vmw_priv);
-       spin_lock_irqsave(&par->dirty.lock, flags);
-       par->dirty.active = false;
-       spin_unlock_irqrestore(&par->dirty.lock, flags);
-@@ -648,6 +651,7 @@ int vmw_fb_on(struct vmw_private *vmw_pr
-       spin_lock_irqsave(&par->dirty.lock, flags);
-       par->dirty.active = true;
-       spin_unlock_irqrestore(&par->dirty.lock, flags);
-+      vmw_kms_restore_vga(vmw_priv);
- 
- err_no_buffer:
-       vmw_fb_set_par(info);
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c
-@@ -98,7 +98,6 @@ int vmw_fifo_init(struct vmw_private *de
-       __le32 __iomem *fifo_mem = dev_priv->mmio_virt;
-       uint32_t max;
-       uint32_t min;
--      uint32_t dummy;
- 
-       fifo->static_buffer_size = VMWGFX_FIFO_STATIC_SIZE;
-       fifo->static_buffer = vmalloc(fifo->static_buffer_size);
-@@ -112,10 +111,6 @@ int vmw_fifo_init(struct vmw_private *de
-       mutex_init(&fifo->fifo_mutex);
-       init_rwsem(&fifo->rwsem);
- 
--      /*
--       * Allow mapping the first page read-only to user-space.
--       */
--
-       DRM_INFO("width %d\n", vmw_read(dev_priv, SVGA_REG_WIDTH));
-       DRM_INFO("height %d\n", vmw_read(dev_priv, SVGA_REG_HEIGHT));
-       DRM_INFO("bpp %d\n", vmw_read(dev_priv, SVGA_REG_BITS_PER_PIXEL));
-@@ -123,7 +118,9 @@ int vmw_fifo_init(struct vmw_private *de
-       dev_priv->enable_state = vmw_read(dev_priv, SVGA_REG_ENABLE);
-       dev_priv->config_done_state = vmw_read(dev_priv, SVGA_REG_CONFIG_DONE);
-       dev_priv->traces_state = vmw_read(dev_priv, SVGA_REG_TRACES);
--      vmw_write(dev_priv, SVGA_REG_ENABLE, 1);
-+
-+      vmw_write(dev_priv, SVGA_REG_ENABLE, SVGA_REG_ENABLE_ENABLE_HIDE);
-+      vmw_write(dev_priv, SVGA_REG_TRACES, 0);
- 
-       min = 4;
-       if (dev_priv->capabilities & SVGA_CAP_EXTENDED_FIFO)
-@@ -155,7 +152,8 @@ int vmw_fifo_init(struct vmw_private *de
-       atomic_set(&dev_priv->marker_seq, dev_priv->last_read_seqno);
-       iowrite32(dev_priv->last_read_seqno, fifo_mem + SVGA_FIFO_FENCE);
-       vmw_marker_queue_init(&fifo->marker_queue);
--      return vmw_fifo_send_fence(dev_priv, &dummy);
-+
-+      return 0;
- }
- 
- void vmw_fifo_ping_host(struct vmw_private *dev_priv, uint32_t reason)
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c
-@@ -280,6 +280,7 @@ static int vmw_ldu_crtc_set_config(struc
-       }
- 
-       vmw_fb_off(dev_priv);
-+      vmw_svga_enable(dev_priv);
- 
-       crtc->primary->fb = fb;
-       encoder->crtc = crtc;
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c
-@@ -574,7 +574,7 @@ void vmw_mob_unbind(struct vmw_private *
-               vmw_fence_single_bo(bo, NULL);
-               ttm_bo_unreserve(bo);
-       }
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
- }
- 
- /*
-@@ -627,7 +627,7 @@ int vmw_mob_bind(struct vmw_private *dev
-               mob->pt_level += VMW_MOBFMT_PTDEPTH_1 - SVGA3D_MOBFMT_PTDEPTH_1;
-       }
- 
--      (void) vmw_3d_resource_inc(dev_priv, false);
-+      vmw_fifo_resource_inc(dev_priv);
- 
-       cmd = vmw_fifo_reserve(dev_priv, sizeof(*cmd));
-       if (unlikely(cmd == NULL)) {
-@@ -648,7 +648,7 @@ int vmw_mob_bind(struct vmw_private *dev
-       return 0;
- 
- out_no_cmd_space:
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
-       if (pt_set_up)
-               ttm_bo_unref(&mob->pt_bo);
- 
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
-@@ -332,6 +332,7 @@ static int vmw_sou_crtc_set_config(struc
-       }
- 
-       vmw_fb_off(dev_priv);
-+      vmw_svga_enable(dev_priv);
- 
-       if (mode->hdisplay != crtc->mode.hdisplay ||
-           mode->vdisplay != crtc->mode.vdisplay) {
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_shader.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_shader.c
-@@ -165,7 +165,7 @@ static int vmw_gb_shader_create(struct v
-       cmd->body.type = shader->type;
-       cmd->body.sizeInBytes = shader->size;
-       vmw_fifo_commit(dev_priv, sizeof(*cmd));
--      (void) vmw_3d_resource_inc(dev_priv, false);
-+      vmw_fifo_resource_inc(dev_priv);
- 
-       return 0;
- 
-@@ -275,7 +275,7 @@ static int vmw_gb_shader_destroy(struct
-       vmw_fifo_commit(dev_priv, sizeof(*cmd));
-       mutex_unlock(&dev_priv->binding_mutex);
-       vmw_resource_release_id(res);
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
- 
-       return 0;
- }
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c
-@@ -340,7 +340,7 @@ static void vmw_hw_surface_destroy(struc
-               dev_priv->used_memory_size -= res->backup_size;
-               mutex_unlock(&dev_priv->cmdbuf_mutex);
-       }
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
- }
- 
- /**
-@@ -576,14 +576,14 @@ static int vmw_surface_init(struct vmw_p
- 
-       BUG_ON(res_free == NULL);
-       if (!dev_priv->has_mob)
--              (void) vmw_3d_resource_inc(dev_priv, false);
-+              vmw_fifo_resource_inc(dev_priv);
-       ret = vmw_resource_init(dev_priv, res, true, res_free,
-                               (dev_priv->has_mob) ? &vmw_gb_surface_func :
-                               &vmw_legacy_surface_func);
- 
-       if (unlikely(ret != 0)) {
-               if (!dev_priv->has_mob)
--                      vmw_3d_resource_dec(dev_priv, false);
-+                      vmw_fifo_resource_dec(dev_priv);
-               res_free(res);
-               return ret;
-       }
-@@ -1028,7 +1028,7 @@ static int vmw_gb_surface_create(struct
-       if (likely(res->id != -1))
-               return 0;
- 
--      (void) vmw_3d_resource_inc(dev_priv, false);
-+      vmw_fifo_resource_inc(dev_priv);
-       ret = vmw_resource_alloc_id(res);
-       if (unlikely(ret != 0)) {
-               DRM_ERROR("Failed to allocate a surface id.\n");
-@@ -1068,7 +1068,7 @@ static int vmw_gb_surface_create(struct
- out_no_fifo:
-       vmw_resource_release_id(res);
- out_no_id:
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
-       return ret;
- }
- 
-@@ -1213,7 +1213,7 @@ static int vmw_gb_surface_destroy(struct
-       vmw_fifo_commit(dev_priv, sizeof(*cmd));
-       mutex_unlock(&dev_priv->binding_mutex);
-       vmw_resource_release_id(res);
--      vmw_3d_resource_dec(dev_priv, false);
-+      vmw_fifo_resource_dec(dev_priv);
- 
-       return 0;
- }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/0002-drm-vmwgfx-Allow-dropped-masters-render-node-like-ac.patch
 
new/patches.drivers/0002-drm-vmwgfx-Allow-dropped-masters-render-node-like-ac.patch
--- 
old/patches.drivers/0002-drm-vmwgfx-Allow-dropped-masters-render-node-like-ac.patch
 2015-10-28 08:49:09.000000000 +0100
+++ 
new/patches.drivers/0002-drm-vmwgfx-Allow-dropped-masters-render-node-like-ac.patch
 1970-01-01 01:00:00.000000000 +0100
@@ -1,57 +0,0 @@
-From aa3469ce7afd86a670d22375a64f1b5a06707725 Mon Sep 17 00:00:00 2001
-From: Thomas Hellstrom <[email protected]>
-Date: Thu, 27 Aug 2015 10:06:24 -0700
-Subject: [PATCH] drm/vmwgfx: Allow dropped masters render-node like access on 
legacy nodes v2
-Git-commit: aa3469ce7afd86a670d22375a64f1b5a06707725
-Patch-mainline: v4.3-rc1
-References: boo#934266
-
-Applications like gnome-shell may try to render after dropping master
-privileges. Since the driver should now be safe against this scenario,
-allow those applications to use their legacy node like a render node.
-
-V2: Add missing return statement.
-
-Signed-off-by: Thomas Hellstrom <[email protected]>
-Reviewed-by: Sinclair Yeh <[email protected]>
-Acked-by: Takashi Iwai <[email protected]>
-
----
- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c     |    7 ++++++-
- drivers/gpu/drm/vmwgfx/vmwgfx_surface.c |    6 ++++++
- 2 files changed, 12 insertions(+), 1 deletion(-)
-
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
-@@ -993,10 +993,15 @@ static struct vmw_master *vmw_master_che
-       }
- 
-       /*
--       * Check if we were previously master, but now dropped.
-+       * Check if we were previously master, but now dropped. In that
-+       * case, allow at least render node functionality.
-        */
-       if (vmw_fp->locked_master) {
-               mutex_unlock(&dev->master_mutex);
-+
-+              if (flags & DRM_RENDER_ALLOW)
-+                      return NULL;
-+
-               DRM_ERROR("Dropped master trying to access ioctl that "
-                         "requires authentication.\n");
-               return ERR_PTR(-EACCES);
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_surface.c
-@@ -906,6 +906,12 @@ vmw_surface_handle_reference(struct vmw_
-                                 "surface reference.\n");
-                       return -EACCES;
-               }
-+              if (ACCESS_ONCE(vmw_fpriv(file_priv)->locked_master)) {
-+                      DRM_ERROR("Locked master refused legacy "
-+                                "surface reference.\n");
-+                      return -EACCES;
-+              }
-+
-               handle = u_handle;
-       }
- 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.drivers/ALSA-hda-Fix-deadlock-at-error-in-building-PCM 
new/patches.drivers/ALSA-hda-Fix-deadlock-at-error-in-building-PCM
--- old/patches.drivers/ALSA-hda-Fix-deadlock-at-error-in-building-PCM  
2015-10-28 08:49:09.000000000 +0100
+++ new/patches.drivers/ALSA-hda-Fix-deadlock-at-error-in-building-PCM  
1970-01-01 01:00:00.000000000 +0100
@@ -1,65 +0,0 @@
-From d289619a219dd01e255d7b5e30f9171b25efea48 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai <[email protected]>
-Date: Tue, 20 Oct 2015 16:23:55 +0200
-Subject: [PATCH] ALSA: hda - Fix deadlock at error in building PCM
-Git-commit: d289619a219dd01e255d7b5e30f9171b25efea48
-Patch-mainline: Queued in subsystem maintainer repository
-Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
-References: bsc#948758
-
-The HDA codec driver issues snd_hda_codec_reset() at the error path of
-PCM build.  This was needed in the earlier code base, but the recent
-rewrite to use the standard bus binding made this a deadlock:
- modprobe        D 0000000000000005     0   720    716 0x00000080
- Call Trace:
-  [<ffffffff816a5dbe>] schedule+0x3e/0x90
-  [<ffffffff816a61a5>] schedule_preempt_disabled+0x15/0x20
-  [<ffffffff816a7ae5>] __mutex_lock_slowpath+0xb5/0x120
-  [<ffffffff816a7b6b>] mutex_lock+0x1b/0x30
-  [<ffffffff8148656b>] device_release_driver+0x1b/0x30
-  [<ffffffff81485c15>] bus_remove_device+0x105/0x180
-  [<ffffffff814822b9>] device_del+0x139/0x260
-  [<ffffffffa05e0ec5>] snd_hdac_device_unregister+0x25/0x30 [snd_hda_core]
-  [<ffffffffa074fa6a>] snd_hda_codec_reset+0x2a/0x70 [snd_hda_codec]
-  [<ffffffffa075007b>] snd_hda_codec_build_pcms+0x18b/0x1b0 [snd_hda_codec]
-  [<ffffffffa074a44e>] hda_codec_driver_probe+0xbe/0x140 [snd_hda_codec]
-  [<ffffffff81486ac4>] driver_probe_device+0x1f4/0x460
-  [<ffffffff81486dc0>] __driver_attach+0x90/0xa0
-  [<ffffffff81484844>] bus_for_each_dev+0x64/0xa0
-  [<ffffffff814862de>] driver_attach+0x1e/0x20
-  [<ffffffff81485e7b>] bus_add_driver+0x1eb/0x280
-  [<ffffffff81487680>] driver_register+0x60/0xe0
-  [<ffffffffa074a0da>] __hda_codec_driver_register+0x5a/0x60 [snd_hda_codec]
-  [<ffffffffa070a01e>] realtek_driver_init+0x1e/0x1000 [snd_hda_codec_realtek]
-  [<ffffffff810002f3>] do_one_initcall+0xb3/0x200
-  [<ffffffff816a1fc5>] do_init_module+0x60/0x1f8
-  [<ffffffff810ee5c3>] load_module+0x1653/0x1bd0
-  [<ffffffff810eed48>] SYSC_finit_module+0x98/0xc0
-  [<ffffffff810eed8e>] SyS_finit_module+0xe/0x10
-  [<ffffffff816aa032>] entry_SYSCALL_64_fastpath+0x16/0x75
-
-The simple fix is just to remove this call, since we don't need to
-think about unbinding at there any longer.
-
-Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=948758
-Cc: <[email protected]> # v4.1+
-Signed-off-by: Takashi Iwai <[email protected]>
-
----
- sound/pci/hda/hda_codec.c |    4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
---- a/sound/pci/hda/hda_codec.c
-+++ b/sound/pci/hda/hda_codec.c
-@@ -3438,10 +3438,8 @@ int snd_hda_codec_build_pcms(struct hda_
-       int dev, err;
- 
-       err = snd_hda_codec_parse_pcms(codec);
--      if (err < 0) {
--              snd_hda_codec_reset(codec);
-+      if (err < 0)
-               return err;
--      }
- 
-       /* attach a new PCM streams */
-       list_for_each_entry(cpcm, &codec->pcm_list_head, list) {

++++++ patches.fixes.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/btrfs-fix-stale-dir-entries-after-unlink-inode-eviction-and-fsync
 
new/patches.fixes/btrfs-fix-stale-dir-entries-after-unlink-inode-eviction-and-fsync
--- 
old/patches.fixes/btrfs-fix-stale-dir-entries-after-unlink-inode-eviction-and-fsync
 2015-10-26 15:37:15.000000000 +0100
+++ 
new/patches.fixes/btrfs-fix-stale-dir-entries-after-unlink-inode-eviction-and-fsync
 1970-01-01 01:00:00.000000000 +0100
@@ -1,172 +0,0 @@
-From: Filipe Manana <[email protected]>
-Date: Fri, 24 Jul 2015 06:30:42 +0100
-Subject: Btrfs: fix stale dir entries after unlink, inode eviction and fsync
-Patch-mainline: Submitted, 
http://www.spinics.net/lists/linux-btrfs/msg45634.html
-References: bsc#942925
-
-If we remove a hard link from an inode, the inode gets evicted, then
-we fsync the inode and then power fail/crash, when the log tree is
-replayed, the parent directory inode still has entries pointing to
-the name that no longer exists, while our inode no longer has the
-BTRFS_INODE_REF_KEY item matching the deleted hard link (as expected),
-leaving the filesystem in an inconsistent state. The stale directory
-entries can not be deleted (an attempt to delete them causes -ESTALE
-errors), which makes it impossible to delete the parent directory.
-
-This happens because we track the id of the transaction where the last
-unlink operation for the inode happened (last_unlink_trans) in an
-in-memory only field of the inode, that is, a value that is never
-persisted in the inode item stored on the fs/subvol btree. So if an
-inode is evicted and loaded again, the value for last_unlink_trans is
-set to 0, which prevents the fsync from logging the parent directory
-at btrfs_log_inode_parent(). So fix this by setting last_unlink_trans
-to the id of the transaction that last modified the inode when we
-load the inode. This is a pessimistic approach but it always ensures
-correctness with the trade off of ocassional full transaction commits
-when an fsync is done against the inode in the same transaction where
-it was evicted and reloaded.
-
-The following test case for fstests triggers the problem:
-
-  seq=`basename $0`
-  seqres=$RESULT_DIR/$seq
-  echo "QA output created by $seq"
-  tmp=/tmp/$$
-  status=1     # failure is the default!
-  trap "_cleanup; exit \$status" 0 1 2 3 15
-
-  _cleanup()
-  {
-      _cleanup_flakey
-      rm -f $tmp.*
-  }
-
-  # get standard environment, filters and checks
-  . ./common/rc
-  . ./common/filter
-  . ./common/dmflakey
-
-  # real QA test starts here
-  _need_to_be_root
-  _supported_fs generic
-  _supported_os Linux
-  _require_scratch
-  _require_dm_flakey
-  _require_metadata_journaling $SCRATCH_DEV
-
-  rm -f $seqres.full
-
-  _scratch_mkfs >>$seqres.full 2>&1
-  _init_flakey
-  _mount_flakey
-
-  # Create our test file with 2 hard links.
-  mkdir $SCRATCH_MNT/testdir
-  touch $SCRATCH_MNT/testdir/foo
-  ln $SCRATCH_MNT/testdir/foo $SCRATCH_MNT/testdir/bar
-
-  # Make sure everything done so far is durably persisted.
-  sync
-
-  # Now remove one of the links, trigger inode eviction and then fsync
-  # our inode.
-  unlink $SCRATCH_MNT/testdir/bar
-  echo 2 > /proc/sys/vm/drop_caches
-  $XFS_IO_PROG -c "fsync" $SCRATCH_MNT/testdir/foo
-
-  # Silently drop all writes on our scratch device to simulate a power failure.
-  _load_flakey_table $FLAKEY_DROP_WRITES
-  _unmount_flakey
-
-  # Allow writes again and mount the fs to trigger log/journal replay.
-  _load_flakey_table $FLAKEY_ALLOW_WRITES
-  _mount_flakey
-
-  # Now verify our directory entries.
-  echo "Entries in testdir:"
-  ls -1 $SCRATCH_MNT/testdir
-
-  # If we remove our inode, its parent should become empty and therefore we 
should
-  # be able to remove the parent.
-  rm -f $SCRATCH_MNT/testdir/*
-  rmdir $SCRATCH_MNT/testdir
-
-  _unmount_flakey
-
-  # The fstests framework will call fsck against our filesystem which will 
verify
-  # that all metadata is in a consistent state.
-
-  status=0
-  exit
-
-The test failed on btrfs with:
-
-  generic/098 4s ... - output mismatch (see 
/home/fdmanana/git/hub/xfstests/results//generic/098.out.bad)
-#    --- tests/generic/098.out 2015-07-23 18:01:12.616175932 +0100
-#    +++ /home/fdmanana/git/hub/xfstests/results//generic/098.out.bad  
2015-07-23 18:04:58.924138308 +0100
-#    @@ -1,3 +1,6 @@
-     QA output created by 098
-     Entries in testdir:
-    +bar
-     foo
-    +rm: cannot remove '/home/fdmanana/btrfs-tests/scratch_1/testdir/foo': 
Stale file handle
-    +rmdir: failed to remove '/home/fdmanana/btrfs-tests/scratch_1/testdir': 
Directory not empty
-    ...
-    (Run 'diff -u tests/generic/098.out 
/home/fdmanana/git/hub/xfstests/results//generic/098.out.bad'  to see the 
entire diff)
-  _check_btrfs_filesystem: filesystem on /dev/sdc is inconsistent (see 
/home/fdmanana/git/hub/xfstests/results//generic/098.full)
-
-  $ cat /home/fdmanana/git/hub/xfstests/results//generic/098.full
-  (...)
-  checking fs roots
-  root 5 inode 258 errors 2001, no inode item, link count wrong
-     unresolved ref dir 257 index 0 namelen 3 name foo filetype 1 errors 6, no 
dir index, no inode ref
-     unresolved ref dir 257 index 3 namelen 3 name bar filetype 1 errors 5, no 
dir item, no inode ref
-  Checking filesystem on /dev/sdc
-  (...)
-
-Signed-off-by: Filipe Manana <[email protected]>
-Acked-by: Jeff Mahoney <[email protected]>
----
- fs/btrfs/inode.c | 28 ++++++++++++++++++++++++++++
- 1 file changed, 28 insertions(+)
-
-diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
-index cf7dc05..6847f93 100644
---- a/fs/btrfs/inode.c
-+++ b/fs/btrfs/inode.c
-@@ -3654,6 +3654,34 @@ cache_index:
-               set_bit(BTRFS_INODE_NEEDS_FULL_SYNC,
-                       &BTRFS_I(inode)->runtime_flags);
- 
-+      /*
-+       * We don't persist the id of the transaction where an unlink operation
-+       * against the inode was last made. So here we assume the inode might
-+       * have been evicted, and therefore the exact value of last_unlink_trans
-+       * lost, and set it to last_trans to avoid metadata inconsistencies
-+       * between the inode and its if the inode is fsync'ed and the log
-+       * replayed. For example, in the scenario:
-+       *
-+       * touch mydir/foo
-+       * ln mydir/foo mydir/bar
-+       * sync
-+       * unlink mydir/bar
-+       * echo 2 > /proc/sys/vm/drop_caches   # evicts inode
-+       * xfs_io -c fsync mydir/foo
-+       * <power failure>
-+       * mount fs, triggers fsync log replay
-+       *
-+       * We must make sure that when we fsync our inode foo we also log its
-+       * parent inode, otherwise after log replay the parent still has the
-+       * dentry with the "bar" name but our inode foo has a link count of 1
-+       * and doesn't have an inode ref with the name "bar" anymore.
-+       *
-+       * Setting last_unlink_trans to last_trans is a pessimistic approach,
-+       * but it guarantees correctness at the expense of ocassional full
-+       * transaction commits on fsync.
-+       */
-+      BTRFS_I(inode)->last_unlink_trans = BTRFS_I(inode)->last_trans;
-+
-       path->slots[0]++;
-       if (inode->i_nlink != 1 ||
-           path->slots[0] >= btrfs_header_nritems(leaf))
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/btrfs-fix-stale-directory-entries-after-fsync-log-replay 
new/patches.fixes/btrfs-fix-stale-directory-entries-after-fsync-log-replay
--- old/patches.fixes/btrfs-fix-stale-directory-entries-after-fsync-log-replay  
2015-10-26 15:37:15.000000000 +0100
+++ new/patches.fixes/btrfs-fix-stale-directory-entries-after-fsync-log-replay  
1970-01-01 01:00:00.000000000 +0100
@@ -1,244 +0,0 @@
-From: Filipe Manana <[email protected]>
-Date: Wed, 22 Jul 2015 04:54:54 +0100
-Subject: Btrfs: fix stale directory entries after fsync log replay
-Patch-mainline: Submitted, 
http://www.spinics.net/lists/linux-btrfs/msg45480.html
-References: bsc#942925
-
-We have another case where after an fsync log replay we get an inode with
-a wrong link count (smaller than it should be) and a number of directory
-entries greater than its link count. This happens when we add a new link
-hard link to our inode A and then we fsync some other inode B that has
-the side effect of logging the parent directory inode too. In this case
-at log replay time we add the new hard link to our inode (the item with
-key BTRFS_INODE_REF_KEY) when processing the parent directory but we
-never adjust the link count of our inode A. As a result we get stale dir
-entries for our inode A that can never be deleted and therefore it makes
-it impossible to remove the parent directory (as its i_size can never
-decrease back to 0).
-
-A simple reproducer for fstests that triggers this issue:
-
-  seq=`basename $0`
-  seqres=$RESULT_DIR/$seq
-  echo "QA output created by $seq"
-  tmp=/tmp/$$
-  status=1     # failure is the default!
-  trap "_cleanup; exit \$status" 0 1 2 3 15
-
-  _cleanup()
-  {
-      _cleanup_flakey
-      rm -f $tmp.*
-  }
-
-  # get standard environment, filters and checks
-  . ./common/rc
-  . ./common/filter
-  . ./common/dmflakey
-
-  # real QA test starts here
-  _need_to_be_root
-  _supported_fs generic
-  _supported_os Linux
-  _require_scratch
-  _require_dm_flakey
-  _require_metadata_journaling $SCRATCH_DEV
-
-  rm -f $seqres.full
-
-  _scratch_mkfs >>$seqres.full 2>&1
-  _init_flakey
-  _mount_flakey
-
-  # Create our test directory and files.
-  mkdir $SCRATCH_MNT/testdir
-  touch $SCRATCH_MNT/testdir/foo
-  touch $SCRATCH_MNT/testdir/bar
-
-  # Make sure everything done so far is durably persisted.
-  sync
-
-  # Create one hard link for file foo and another one for file bar. After
-  # that fsync only the file bar.
-  ln $SCRATCH_MNT/testdir/bar $SCRATCH_MNT/testdir/bar_link
-  ln $SCRATCH_MNT/testdir/foo $SCRATCH_MNT/testdir/foo_link
-  $XFS_IO_PROG -c "fsync" $SCRATCH_MNT/testdir/bar
-
-  # Silently drop all writes on scratch device to simulate power failure.
-  _load_flakey_table $FLAKEY_DROP_WRITES
-  _unmount_flakey
-
-  # Allow writes again and mount the fs to trigger log/journal replay.
-  _load_flakey_table $FLAKEY_ALLOW_WRITES
-  _mount_flakey
-
-  # Now verify both our files have a link count of 2.
-  echo "Link count for file foo: $(stat --format=%h $SCRATCH_MNT/testdir/foo)"
-  echo "Link count for file bar: $(stat --format=%h $SCRATCH_MNT/testdir/bar)"
-
-  # We should be able to remove all the links of our files in testdir, and
-  # after that the parent directory should become empty and therefore
-  # possible to remove it.
-  rm -f $SCRATCH_MNT/testdir/*
-  rmdir $SCRATCH_MNT/testdir
-
-  _unmount_flakey
-
-  # The fstests framework will call fsck against our filesystem which will 
verify
-  # that all metadata is in a consistent state.
-
-  status=0
-  exit
-
-The test fails with:
-
- -Link count for file foo: 2
- +Link count for file foo: 1
-  Link count for file bar: 2
- +rm: cannot remove '/home/fdmanana/btrfs-tests/scratch_1/testdir/foo_link': 
Stale file handle
- +rmdir: failed to remove '/home/fdmanana/btrfs-tests/scratch_1/testdir': 
Directory not empty
- (...)
- _check_btrfs_filesystem: filesystem on /dev/sdc is inconsistent
-
-And fsck's output:
-
-  (...)
-  checking fs roots
-  root 5 inode 258 errors 2001, no inode item, link count wrong
-      unresolved ref dir 257 index 5 namelen 8 name foo_link filetype 1 errors 
4, no inode ref
-  Checking filesystem on /dev/sdc
-  (...)
-
-So fix this by marking inodes for link count fixup at log replay time
-whenever a directory entry is replayed if the entry was created in the
-transaction where the fsync was made and if it points to a non-directory
-inode.
-
-This isn't a new problem/regression, the issue exists for a long time,
-possibly since the log tree feature was added (2008).
-
-Signed-off-by: Filipe Manana <[email protected]>
-Acked-by: Jeff Mahoney <[email protected]>
----
- fs/btrfs/tree-log.c | 64 +++++++++++++++++++++++++++++++++++++++++++++++++----
- 1 file changed, 60 insertions(+), 4 deletions(-)
-
-diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
-index 9c45431..cb5666e 100644
---- a/fs/btrfs/tree-log.c
-+++ b/fs/btrfs/tree-log.c
-@@ -1613,6 +1613,9 @@ static bool name_in_log_ref(struct btrfs_root *log_root,
-  * not exist in the FS, it is skipped.  fsyncs on directories
-  * do not force down inodes inside that directory, just changes to the
-  * names or unlinks in a directory.
-+ *
-+ * Returns < 0 on error, 0 if the name wasn't replayed (dentry points to a
-+ * non-existing inode) and 1 if the name was replayed.
-  */
- static noinline int replay_one_name(struct btrfs_trans_handle *trans,
-                                   struct btrfs_root *root,
-@@ -1631,6 +1634,7 @@ static noinline int replay_one_name(struct 
btrfs_trans_handle *trans,
-       int exists;
-       int ret = 0;
-       bool update_size = (key->type == BTRFS_DIR_INDEX_KEY);
-+      bool name_added = false;
- 
-       dir = read_one_inode(root, key->objectid);
-       if (!dir)
-@@ -1708,6 +1712,8 @@ out:
-       }
-       kfree(name);
-       iput(dir);
-+      if (!ret && name_added)
-+              ret = 1;
-       return ret;
- 
- insert:
-@@ -1723,6 +1729,8 @@ insert:
-                             name, name_len, log_type, &log_key);
-       if (ret && ret != -ENOENT && ret != -EEXIST)
-               goto out;
-+      if (!ret)
-+              name_added = true;
-       update_size = false;
-       ret = 0;
-       goto out;
-@@ -1740,12 +1748,13 @@ static noinline int replay_one_dir_item(struct 
btrfs_trans_handle *trans,
-                                       struct extent_buffer *eb, int slot,
-                                       struct btrfs_key *key)
- {
--      int ret;
-+      int ret = 0;
-       u32 item_size = btrfs_item_size_nr(eb, slot);
-       struct btrfs_dir_item *di;
-       int name_len;
-       unsigned long ptr;
-       unsigned long ptr_end;
-+      struct btrfs_path *fixup_path = NULL;
- 
-       ptr = btrfs_item_ptr_offset(eb, slot);
-       ptr_end = ptr + item_size;
-@@ -1755,12 +1764,59 @@ static noinline int replay_one_dir_item(struct 
btrfs_trans_handle *trans,
-                       return -EIO;
-               name_len = btrfs_dir_name_len(eb, di);
-               ret = replay_one_name(trans, root, path, eb, di, key);
--              if (ret)
--                      return ret;
-+              if (ret < 0)
-+                      break;
-               ptr = (unsigned long)(di + 1);
-               ptr += name_len;
-+
-+              /*
-+               * If this entry refers to a non-directory (directories can not
-+               * have a link count > 1) and it was added in the transaction
-+               * that was not committed, make sure we fixup the link count of
-+               * the inode it the entry points to. Otherwise something like
-+               * the following would result in a directory pointing to an
-+               * inode with a wrong link that does not account for this dir
-+               * entry:
-+               *
-+               * mkdir testdir
-+               * touch testdir/foo
-+               * touch testdir/bar
-+               * sync
-+               *
-+               * ln testdir/bar testdir/bar_link
-+               * ln testdir/foo testdir/foo_link
-+               * xfs_io -c "fsync" testdir/bar
-+               *
-+               * <power failure>
-+               *
-+               * mount fs, log replay happens
-+               *
-+               * File foo would remain with a link count of 1 when it has two
-+               * entries pointing to it in the directory testdir. This would
-+               * make it impossible to ever delete the parent directory has
-+               * it would result in stale dentries that can never be deleted.
-+               */
-+              if (ret == 1 && btrfs_dir_type(eb, di) != BTRFS_FT_DIR) {
-+                      struct btrfs_key di_key;
-+
-+                      if (!fixup_path) {
-+                              fixup_path = btrfs_alloc_path();
-+                              if (!fixup_path) {
-+                                      ret = -ENOMEM;
-+                                      break;
-+                              }
-+                      }
-+
-+                      btrfs_dir_item_key_to_cpu(eb, di, &di_key);
-+                      ret = link_to_fixup_dir(trans, root, fixup_path,
-+                                              di_key.objectid);
-+                      if (ret)
-+                              break;
-+              }
-+              ret = 0;
-       }
--      return 0;
-+      btrfs_free_path(fixup_path);
-+      return ret;
- }
- 
- /*
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.fixes/dm-mpath-reattach-dh 
new/patches.fixes/dm-mpath-reattach-dh
--- old/patches.fixes/dm-mpath-reattach-dh      2015-10-26 15:37:15.000000000 
+0100
+++ new/patches.fixes/dm-mpath-reattach-dh      1970-01-01 01:00:00.000000000 
+0100
@@ -1,29 +0,0 @@
-From: Hannes Reinecke <[email protected]>
-Subject: Reattach device handler for multipath devices
-References: bnc#435688
-Patch-mainline: not yet
-
-The multipath daemon might have specified a different device_handler
-than the one a device is attached to by default.
-So we should try to re-attach with the user-specified device_handler
-and only return an error if that fails.
-And we should _not_ detach existing hardware handlers. This will
-set the path to failed during failover.
-
-Signed-off-by: Hannes Reinecke <[email protected]
-
----
- drivers/md/dm-mpath.c |    2 --
- 1 file changed, 2 deletions(-)
-
---- a/drivers/md/dm-mpath.c
-+++ b/drivers/md/dm-mpath.c
-@@ -168,8 +168,6 @@ static void free_pgpaths(struct list_hea
- 
-       list_for_each_entry_safe(pgpath, tmp, pgpaths, list) {
-               list_del(&pgpath->list);
--              if (m->hw_handler_name)
--                      scsi_dh_detach(bdev_get_queue(pgpath->path.dev->bdev));
-               dm_put_device(ti, pgpath->path.dev);
-               free_pgpath(pgpath);
-       }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.fixes/dm-table-switch-to-readonly 
new/patches.fixes/dm-table-switch-to-readonly
--- old/patches.fixes/dm-table-switch-to-readonly       2015-10-26 
15:37:15.000000000 +0100
+++ new/patches.fixes/dm-table-switch-to-readonly       2015-11-02 
15:56:50.000000000 +0100
@@ -68,9 +68,9 @@
                        kfree(td);
                        return r;
 @@ -2347,6 +2361,10 @@ static struct dm_table *__bind(struct ma
-               set_bit(DMF_MERGE_IS_OPTIONAL, &md->flags);
-       else
-               clear_bit(DMF_MERGE_IS_OPTIONAL, &md->flags);
+       md->immutable_target_type = dm_table_get_immutable_target_type(t);
+ 
+       dm_table_set_restrictions(t, q, limits);
 +      if (!(dm_table_get_mode(t) & FMODE_WRITE))
 +              set_disk_ro(md->disk, 1);
 +      else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/media-c8sectpfe-Remove-select-of-CONFIG_FW_LOADER_USER_HELPER 
new/patches.fixes/media-c8sectpfe-Remove-select-of-CONFIG_FW_LOADER_USER_HELPER
--- 
old/patches.fixes/media-c8sectpfe-Remove-select-of-CONFIG_FW_LOADER_USER_HELPER 
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/patches.fixes/media-c8sectpfe-Remove-select-of-CONFIG_FW_LOADER_USER_HELPER 
    2015-11-02 15:56:50.000000000 +0100
@@ -0,0 +1,30 @@
+From: Takashi Iwai <[email protected]>
+Subject: [PATCH] [media] c8sectpfe: Remove select on 
CONFIG_FW_LOADER_USER_HELPER_FALLBACK
+Date: Mon, 19 Oct 2015 08:17:30 +0200
+Message-id: <[email protected]>
+Patch-mainline: Submitted, Mon, 19 Oct 2015 08:17:30 +0200, LKML
+References: boo#951260
+
+c8sectpfe driver selects CONFIG_FW_LOADER_USER_HELPER_FALLBACK by some
+reason, but this option is known to be harmful, leading to minutes of
+stalls at boot time.  The option was intended for only compatibility
+for an old exotic system that mandates the udev interaction, and not a
+thing a driver selects by itself.  Let's remove it.
+
+Fixes: 850a3f7d5911 ('[media] c8sectpfe: Add Kconfig and Makefile for the 
driver')
+Signed-off-by: Takashi Iwai <[email protected]>
+
+---
+ drivers/media/platform/sti/c8sectpfe/Kconfig |    1 -
+ 1 file changed, 1 deletion(-)
+
+--- a/drivers/media/platform/sti/c8sectpfe/Kconfig
++++ b/drivers/media/platform/sti/c8sectpfe/Kconfig
+@@ -3,7 +3,6 @@ config DVB_C8SECTPFE
+       depends on PINCTRL && DVB_CORE && I2C
+       depends on ARCH_STI || ARCH_MULTIPLATFORM || COMPILE_TEST
+       select FW_LOADER
+-      select FW_LOADER_USER_HELPER_FALLBACK
+       select DEBUG_FS
+       select DVB_LNBP21 if MEDIA_SUBDRV_AUTOSELECT
+       select DVB_STV090x if MEDIA_SUBDRV_AUTOSELECT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/rtlwifi-rtl8821ae-Fix-system-lockups-on-boot.patch 
new/patches.fixes/rtlwifi-rtl8821ae-Fix-system-lockups-on-boot.patch
--- old/patches.fixes/rtlwifi-rtl8821ae-Fix-system-lockups-on-boot.patch        
2015-10-26 15:37:15.000000000 +0100
+++ new/patches.fixes/rtlwifi-rtl8821ae-Fix-system-lockups-on-boot.patch        
1970-01-01 01:00:00.000000000 +0100
@@ -1,132 +0,0 @@
-From 54328e64047a54b8fc2362c2e1f0fa16c90f739f Mon Sep 17 00:00:00 2001
-From: Larry Finger <[email protected]>
-Date: Fri, 2 Oct 2015 11:44:30 -0500
-Subject: [PATCH] rtlwifi: rtl8821ae: Fix system lockups on boot
-Patch-mainline: Queued in subsystem maintainer repository
-Git-repo: 
git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next.git#master
-Git-commit: 54328e64047a54b8fc2362c2e1f0fa16c90f739f
-References: boo#944978
-
-In commit 1277fa2ab2f9 ("rtlwifi: Remove the clear interrupt routine from all
-drivers"), the code that cleared all interrupt enable bits before setting them
-was removed for all PCI drivers. This fixed an issue that caused TX to be
-blocked for 3-5 seconds. On some RTL8821AE units, this change causes soft
-lockups to occur on boot. For that reason, the portion of the earlier commit
-that applied to rtl8821ae is reverted. Kernels 4.1 and newer are affected.
-
-See http://marc.info/?l=linux-wireless&m=144373370103285&w=2 and
-https://bugzilla.opensuse.org/show_bug.cgi?id=944978 for two cases where
-this regression affected user systems. Note that this bug does not appear on
-any of the developer's setups. For those users whose systems are affected
-by the TX blockage, but do not lock up on boot, a module parameter is added
-to disable the interrupt clear
-
-Fixes: 1277fa2ab2f9 ("rtlwifi: Remove the clear interrupt routine from all 
drivers")
-Signed-off-by: Larry Finger <[email protected]>
-Cc: Stable <[email protected]> [V4.1+]
-Signed-off-by: Kalle Valo <[email protected]>
-Acked-by: Takashi Iwai <[email protected]>
-
----
- drivers/net/wireless/rtlwifi/pci.h          |    2 ++
- drivers/net/wireless/rtlwifi/rtl8821ae/hw.c |   17 +++++++++++++++++
- drivers/net/wireless/rtlwifi/rtl8821ae/sw.c |    5 +++++
- drivers/net/wireless/rtlwifi/wifi.h         |    3 +++
- 4 files changed, 27 insertions(+)
-
---- a/drivers/net/wireless/rtlwifi/pci.h
-+++ b/drivers/net/wireless/rtlwifi/pci.h
-@@ -247,6 +247,8 @@ struct rtl_pci {
-       /* MSI support */
-       bool msi_support;
-       bool using_msi;
-+      /* interrupt clear before set */
-+      bool int_clear;
- };
- 
- struct mp_adapter {
---- a/drivers/net/wireless/rtlwifi/rtl8821ae/hw.c
-+++ b/drivers/net/wireless/rtlwifi/rtl8821ae/hw.c
-@@ -2253,11 +2253,28 @@ void rtl8821ae_set_qos(struct ieee80211_
-       }
- }
- 
-+static void rtl8821ae_clear_interrupt(struct ieee80211_hw *hw)
-+{
-+      struct rtl_priv *rtlpriv = rtl_priv(hw);
-+      u32 tmp = rtl_read_dword(rtlpriv, REG_HISR);
-+
-+      rtl_write_dword(rtlpriv, REG_HISR, tmp);
-+
-+      tmp = rtl_read_dword(rtlpriv, REG_HISRE);
-+      rtl_write_dword(rtlpriv, REG_HISRE, tmp);
-+
-+      tmp = rtl_read_dword(rtlpriv, REG_HSISR);
-+      rtl_write_dword(rtlpriv, REG_HSISR, tmp);
-+}
-+
- void rtl8821ae_enable_interrupt(struct ieee80211_hw *hw)
- {
-       struct rtl_priv *rtlpriv = rtl_priv(hw);
-       struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw));
- 
-+      if (!rtlpci->int_clear)
-+              rtl8821ae_clear_interrupt(hw);/*clear it here first*/
-+
-       rtl_write_dword(rtlpriv, REG_HIMR, rtlpci->irq_mask[0] & 0xFFFFFFFF);
-       rtl_write_dword(rtlpriv, REG_HIMRE, rtlpci->irq_mask[1] & 0xFFFFFFFF);
-       rtlpci->irq_enabled = true;
---- a/drivers/net/wireless/rtlwifi/rtl8821ae/sw.c
-+++ b/drivers/net/wireless/rtlwifi/rtl8821ae/sw.c
-@@ -96,6 +96,7 @@ int rtl8821ae_init_sw_vars(struct ieee80
- 
-       rtl8821ae_bt_reg_init(hw);
-       rtlpci->msi_support = rtlpriv->cfg->mod_params->msi_support;
-+      rtlpci->int_clear = rtlpriv->cfg->mod_params->int_clear;
-       rtlpriv->btcoexist.btc_ops = rtl_btc_get_ops_pointer();
- 
-       rtlpriv->dm.dm_initialgain_enable = 1;
-@@ -167,6 +168,7 @@ int rtl8821ae_init_sw_vars(struct ieee80
-       rtlpriv->psc.swctrl_lps = rtlpriv->cfg->mod_params->swctrl_lps;
-       rtlpriv->psc.fwctrl_lps = rtlpriv->cfg->mod_params->fwctrl_lps;
-       rtlpci->msi_support = rtlpriv->cfg->mod_params->msi_support;
-+      rtlpci->msi_support = rtlpriv->cfg->mod_params->int_clear;
-       if (rtlpriv->cfg->mod_params->disable_watchdog)
-               pr_info("watchdog disabled\n");
-       rtlpriv->psc.reg_fwctrl_lps = 3;
-@@ -308,6 +310,7 @@ static struct rtl_mod_params rtl8821ae_m
-       .swctrl_lps = false,
-       .fwctrl_lps = true,
-       .msi_support = true,
-+      .int_clear = true,
-       .debug = DBG_EMERG,
-       .disable_watchdog = 0,
- };
-@@ -437,6 +440,7 @@ module_param_named(fwlps, rtl8821ae_mod_
- module_param_named(msi, rtl8821ae_mod_params.msi_support, bool, 0444);
- module_param_named(disable_watchdog, rtl8821ae_mod_params.disable_watchdog,
-                  bool, 0444);
-+module_param_named(int_clear, rtl8821ae_mod_params.int_clear, bool, 0444);
- MODULE_PARM_DESC(swenc, "Set to 1 for software crypto (default 0)\n");
- MODULE_PARM_DESC(ips, "Set to 0 to not use link power save (default 1)\n");
- MODULE_PARM_DESC(swlps, "Set to 1 to use SW control power save (default 
0)\n");
-@@ -444,6 +448,7 @@ MODULE_PARM_DESC(fwlps, "Set to 1 to use
- MODULE_PARM_DESC(msi, "Set to 1 to use MSI interrupts mode (default 1)\n");
- MODULE_PARM_DESC(debug, "Set debug level (0-5) (default 0)");
- MODULE_PARM_DESC(disable_watchdog, "Set to 1 to disable the watchdog (default 
0)\n");
-+MODULE_PARM_DESC(int_clear, "Set to 1 to disable interrupt clear before set 
(default 0)\n");
- 
- static SIMPLE_DEV_PM_OPS(rtlwifi_pm_ops, rtl_pci_suspend, rtl_pci_resume);
- 
---- a/drivers/net/wireless/rtlwifi/wifi.h
-+++ b/drivers/net/wireless/rtlwifi/wifi.h
-@@ -2249,6 +2249,9 @@ struct rtl_mod_params {
- 
-       /* default 0: 1 means disable */
-       bool disable_watchdog;
-+
-+      /* default 0: 1 means do not disable interrupts */
-+      bool int_clear;
- };
- 
- struct rtl_hal_usbint_cfg {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.fixes/scsi-dh-queuedata-accessors 
new/patches.fixes/scsi-dh-queuedata-accessors
--- old/patches.fixes/scsi-dh-queuedata-accessors       2015-10-26 
15:37:15.000000000 +0100
+++ new/patches.fixes/scsi-dh-queuedata-accessors       2015-11-02 
15:56:50.000000000 +0100
@@ -14,13 +14,13 @@
 Signed-off-by: Hannes Reinecke <[email protected]>
 
 ---
- drivers/scsi/device_handler/scsi_dh.c |   10 +++++-----
+ drivers/scsi/scsi_dh.c |   10 +++++-----
  drivers/scsi/scsi_lib.c               |   11 +++++++++++
  include/scsi/scsi_device.h            |    1 +
  3 files changed, 17 insertions(+), 5 deletions(-)
 
---- a/drivers/scsi/device_handler/scsi_dh.c
-+++ b/drivers/scsi/device_handler/scsi_dh.c
+--- a/drivers/scsi/scsi_dh.c
++++ b/drivers/scsi/scsi_dh.c
 @@ -397,7 +397,7 @@ int scsi_dh_activate(struct request_queu
        struct device *dev = NULL;
  
@@ -48,8 +48,8 @@
        if (!sdev || !get_device(&sdev->sdev_gendev))
                sdev = NULL;
        spin_unlock_irqrestore(q->queue_lock, flags);
---- a/drivers/scsi/scsi_lib.c
-+++ b/drivers/scsi/scsi_lib.c
+--- a/drivers/scsi/scsi_dh.c
++++ b/drivers/scsi/scsi_dh.c
 @@ -1594,6 +1594,17 @@ out:
        kfree(cmd->sense_buffer);
  }

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

++++++ patches.suse.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.suse/8250-sysrq-ctrl_o.patch 
new/patches.suse/8250-sysrq-ctrl_o.patch
--- old/patches.suse/8250-sysrq-ctrl_o.patch    2015-09-22 17:17:36.000000000 
+0200
+++ new/patches.suse/8250-sysrq-ctrl_o.patch    2015-09-25 22:51:28.000000000 
+0200
@@ -110,17 +110,17 @@
        of_node_put(prom_stdout);
  
        DBG("Found serial console at ttyS%d\n", offset);
---- a/drivers/tty/serial/8250/8250_core.c
-+++ b/drivers/tty/serial/8250/8250_core.c
+--- a/drivers/tty/serial/8250/8250_port.c
++++ b/drivers/tty/serial/8250/8250_port.c
 @@ -102,6 +102,8 @@ static unsigned int skip_txen_test; /* f
- #define BOTH_EMPTY    (UART_LSR_TEMT | UART_LSR_THRE)
  
+ #define BOTH_EMPTY    (UART_LSR_TEMT | UART_LSR_THRE)
  
 +#define arch_8250_sysrq_via_ctrl_o(a,b) 0
 +
- #include <asm/serial.h>
  /*
-  * SERIAL_PORT_DFNS tells us about built-in ports that have no
+  * Here we define the default xmit fifo size used for each type of UART.
+  */
 @@ -1423,7 +1425,11 @@ receive_chars(struct uart_8250_port *up,
  
        do {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.suse/btrfs-advertise-which-crc32c-implementation-is-being-used-on-mount
 
new/patches.suse/btrfs-advertise-which-crc32c-implementation-is-being-used-on-mount
--- 
old/patches.suse/btrfs-advertise-which-crc32c-implementation-is-being-used-on-mount
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/patches.suse/btrfs-advertise-which-crc32c-implementation-is-being-used-on-mount
 2015-09-25 22:51:28.000000000 +0200
@@ -0,0 +1,33 @@
+From: Jeff Mahoney <[email protected]>
+Subject: btrfs: advertise which crc32c implementation is being used on mount
+References: bsc#946057
+Patch-mainline: Submitted to linux-btrfs, 16 Sep 2015
+
+Since several architectures support hardware-accelerated crc32c 
+calculation, it would be nice to confirm that btrfs is actually using it.
+
+We can see an elevated use count for the module, but it doesn't actually
+show who the users are.  This patch simply prints the name of the driver
+after successfully initializing the shash.
+
+Signed-off-by: Jeff Mahoney <[email protected]>
+---
+ fs/btrfs/hash.c |    6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+--- a/fs/btrfs/hash.c
++++ b/fs/btrfs/hash.c
+@@ -20,8 +20,12 @@ static struct crypto_shash *tfm;
+ int __init btrfs_hash_init(void)
+ {
+       tfm = crypto_alloc_shash("crc32c", 0, 0);
++      if (IS_ERR(tfm))
++              return PTR_ERR(tfm);
+ 
+-      return PTR_ERR_OR_ZERO(tfm);
++      printk("BTRFS: using %s for crc32c\n",
++             crypto_tfm_alg_driver_name(crypto_shash_tfm(tfm)));
++      return 0;
+ }
+ 
+ void btrfs_hash_exit(void)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.suse/btrfs-provide-super_operations-get_inode_dev 
new/patches.suse/btrfs-provide-super_operations-get_inode_dev
--- old/patches.suse/btrfs-provide-super_operations-get_inode_dev       
1970-01-01 01:00:00.000000000 +0100
+++ new/patches.suse/btrfs-provide-super_operations-get_inode_dev       
2015-09-25 22:51:28.000000000 +0200
@@ -0,0 +1,50 @@
+From: Jeff Mahoney <[email protected]>
+Subject: btrfs: provide super_operations->inode_get_dev
+References: bsc#927455
+Patch-mainline: Probably never,
+ upstream solutions have been met with heavy resistance in
+ preference of unworkable fixes
+
+In order to ensure that the per-subvolume anonymous dev_t gets published
+to userspace, we need to provide the super_operations->get_inode_dev
+operation.
+
+Signed-off-by: Jeff Mahoney <[email protected]>
+---
+ fs/btrfs/btrfs_inode.h |    2 +-
+ fs/btrfs/super.c       |    6 ++++++
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
+--- a/fs/btrfs/btrfs_inode.h
++++ b/fs/btrfs/btrfs_inode.h
+@@ -179,7 +179,7 @@ struct btrfs_inode {
+ 
+ extern unsigned char btrfs_filetype_table[];
+ 
+-static inline struct btrfs_inode *BTRFS_I(struct inode *inode)
++static inline struct btrfs_inode *BTRFS_I(const struct inode *inode)
+ {
+       return container_of(inode, struct btrfs_inode, vfs_inode);
+ }
+--- a/fs/btrfs/super.c
++++ b/fs/btrfs/super.c
+@@ -1813,6 +1813,11 @@ static int btrfs_show_devname(struct seq
+       return 0;
+ }
+ 
++static dev_t btrfs_get_inode_dev(const struct inode *inode)
++{
++      return BTRFS_I(inode)->root->anon_dev;
++}
++
+ static const struct super_operations btrfs_super_ops = {
+       .drop_inode     = btrfs_drop_inode,
+       .evict_inode    = btrfs_evict_inode,
+@@ -1827,6 +1832,7 @@ static const struct super_operations btr
+       .statfs         = btrfs_statfs,
+       .remount_fs     = btrfs_remount,
+       .freeze_fs      = btrfs_freeze,
++      .get_inode_dev  = btrfs_get_inode_dev,
+ };
+ 
+ static const struct file_operations btrfs_ctl_fops = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.suse/btrfs-use-correct-device-for-maps.patch 
new/patches.suse/btrfs-use-correct-device-for-maps.patch
--- old/patches.suse/btrfs-use-correct-device-for-maps.patch    2015-09-22 
17:17:36.000000000 +0200
+++ new/patches.suse/btrfs-use-correct-device-for-maps.patch    1970-01-01 
01:00:00.000000000 +0100
@@ -1,68 +0,0 @@
-From: David Sterba <[email protected]>
-Date: Mon, 02 Jan 2012 13:40:28 +0100
-Subject: [PATCH] btrfs: use correct device for maps
-Reference: bnc#672923 bnc#769545
-Patch-mainline: no
-
-Signed-off-by: David Sterba <[email protected]>
----
-
----
- fs/proc/task_mmu.c   |   11 ++++++++++-
- fs/proc/task_nommu.c |   11 ++++++++++-
- 2 files changed, 20 insertions(+), 2 deletions(-)
-
---- a/fs/proc/task_mmu.c       2013-05-11 20:14:08.000000000 -0400
-+++ b/fs/proc/task_mmu.c       2013-05-14 09:22:40.157664262 -0400
-@@ -11,6 +11,7 @@
- #include <linux/swap.h>
- #include <linux/swapops.h>
- #include <linux/mmu_notifier.h>
-+#include <linux/magic.h>
- 
- #include <asm/elf.h>
- #include <asm/uaccess.h>
-@@ -272,7 +273,15 @@ show_map_vma(struct seq_file *m, struct
- 
-       if (file) {
-               struct inode *inode = file_inode(vma->vm_file);
--              dev = inode->i_sb->s_dev;
-+
-+              if (inode->i_sb->s_magic == BTRFS_SUPER_MAGIC) {
-+                      struct kstat stat;
-+
-+                      vfs_getattr(&file->f_path, &stat);
-+                      dev = stat.dev;
-+              } else {
-+                      dev = inode->i_sb->s_dev;
-+              }
-               ino = inode->i_ino;
-               pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
-       }
---- a/fs/proc/task_nommu.c     2013-05-11 20:14:08.000000000 -0400
-+++ b/fs/proc/task_nommu.c     2013-05-14 09:22:50.310566899 -0400
-@@ -7,6 +7,7 @@
- #include <linux/ptrace.h>
- #include <linux/slab.h>
- #include <linux/seq_file.h>
-+#include <linux/magic.h>
- #include "internal.h"
- 
- /*
-@@ -150,7 +151,15 @@ static int nommu_vma_show(struct seq_fil
- 
-       if (file) {
-               struct inode *inode = file_inode(vma->vm_file);
--              dev = inode->i_sb->s_dev;
-+
-+              if (inode->i_sb->s_magic == BTRFS_SUPER_MAGIC) {
-+                      struct kstat stat;
-+
-+                      vfs_getattr(&file->f_path, &stat);
-+                      dev = stat.dev;
-+              } else {
-+                      dev = inode->i_sb->s_dev;
-+              }
-               ino = inode->i_ino;
-               pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
-       }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.suse/kconfig-automate-kernel-desktop 
new/patches.suse/kconfig-automate-kernel-desktop
--- old/patches.suse/kconfig-automate-kernel-desktop    2015-09-22 
17:17:36.000000000 +0200
+++ new/patches.suse/kconfig-automate-kernel-desktop    1970-01-01 
01:00:00.000000000 +0100
@@ -1,50 +0,0 @@
-From: Suresh Jayaraman <[email protected]>
-Subject: [PATCH] automate config options for kernel-desktop
-References: FATE#305694
-Patch-mainline: Never
-
-Automate the desktop only kernel configuration options with the new
-CONFIG_KERNEL_DESKTOP.
-
-Signed-off-by: Suresh Jayaraman <[email protected]>
----
- init/Kconfig           |    6 ++++++
- kernel/Kconfig.hz      |    1 +
- kernel/Kconfig.preempt |    1 +
- 3 files changed, 8 insertions(+)
-
---- a/init/Kconfig
-+++ b/init/Kconfig
-@@ -30,6 +30,12 @@ config SPLIT_PACKAGE
-         If you aren't packaging a kernel for distribution, it's safe to
-         say n.
- 
-+config KERNEL_DESKTOP
-+      bool "Kernel to suit desktop workloads"
-+      help
-+        This is an option used to tune kernel parameters to better suit
-+        desktop workloads.
-+
- config ARCH
-       string
-       option env="ARCH"
---- a/kernel/Kconfig.hz
-+++ b/kernel/Kconfig.hz
-@@ -4,6 +4,7 @@
- 
- choice
-       prompt "Timer frequency"
-+      default HZ_1000 if KERNEL_DESKTOP
-       default HZ_250
-       help
-        Allows the configuration of the timer frequency. It is customary
---- a/kernel/Kconfig.preempt
-+++ b/kernel/Kconfig.preempt
-@@ -1,6 +1,7 @@
- 
- choice
-       prompt "Preemption Model"
-+      default PREEMPT if KERNEL_DESKTOP
-       default PREEMPT_NONE
- 
- config PREEMPT_NONE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.suse/mpath-fix new/patches.suse/mpath-fix
--- old/patches.suse/mpath-fix  2015-09-22 17:17:36.000000000 +0200
+++ new/patches.suse/mpath-fix  2015-09-25 22:51:28.000000000 +0200
@@ -13,14 +13,6 @@
 
 --- a/drivers/md/dm-mpath.c
 +++ b/drivers/md/dm-mpath.c
-@@ -165,7 +165,6 @@ static struct priority_group *alloc_prio
- static void free_pgpaths(struct list_head *pgpaths, struct dm_target *ti)
- {
-       struct pgpath *pgpath, *tmp;
--      struct multipath *m = ti->private;
- 
-       list_for_each_entry_safe(pgpath, tmp, pgpaths, list) {
-               list_del(&pgpath->list);
 @@ -1201,7 +1200,7 @@ static void pg_init_done(void *data, int
                        break;
                }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.suse/scsi-netlink-ml 
new/patches.suse/scsi-netlink-ml
--- old/patches.suse/scsi-netlink-ml    2015-09-22 17:17:36.000000000 +0200
+++ new/patches.suse/scsi-netlink-ml    2015-09-25 22:51:28.000000000 +0200
@@ -27,8 +27,8 @@
  #include <scsi/scsi.h>
  #include <scsi/scsi_cmnd.h>
 @@ -34,6 +36,7 @@
- #include <scsi/scsi_host.h>
  #include <scsi/scsi_ioctl.h>
+ #include <scsi/scsi_dh.h>
  #include <scsi/sg.h>
 +#include <scsi/scsi_netlink_ml.h>
  
@@ -121,9 +121,9 @@
  
 +      scsi_post_sense_event(sdev, &sshdr);
 +
-       if (sdev->scsi_dh_data && sdev->scsi_dh_data->scsi_dh &&
-                       sdev->scsi_dh_data->scsi_dh->check_sense) {
+       if (sdev->handler && sdev->handler->check_sense) {
                int rc;
+ 
 --- a/include/uapi/scsi/scsi_netlink.h
 +++ b/include/uapi/scsi/scsi_netlink.h
 @@ -35,7 +35,8 @@
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-22 17:17:36.000000000 +0200
+++ new/patches.suse/stack-unwind       2015-09-25 22:51:28.000000000 +0200
@@ -58,7 +58,7 @@
 
 --- a/Makefile
 +++ b/Makefile
-@@ -729,6 +729,11 @@ endif
+@@ -722,6 +722,11 @@ endif
  
  KBUILD_CFLAGS   += $(call cc-option, -fno-var-tracking-assignments)
  
@@ -72,7 +72,7 @@
  KBUILD_CFLAGS   += $(call cc-option, -gsplit-dwarf, -g)
 --- a/arch/x86/Kconfig
 +++ b/arch/x86/Kconfig
-@@ -635,7 +635,7 @@ config X86_32_IRIS
+@@ -637,7 +637,7 @@ config X86_32_IRIS
  config SCHED_OMIT_FRAME_POINTER
        def_bool y
        prompt "Single-depth WCHAN output"
@@ -83,7 +83,7 @@
          is disabled then wchan values will recurse back to the
 --- a/arch/x86/Makefile
 +++ b/arch/x86/Makefile
-@@ -149,6 +149,11 @@ endif
+@@ -159,6 +159,11 @@ endif
  sp-$(CONFIG_X86_32) := esp
  sp-$(CONFIG_X86_64) := rsp
  
@@ -95,7 +95,7 @@
  # does binutils support specific instructions?
  asinstr := $(call as-instr,fxsaveq (%rax),-DCONFIG_AS_FXSAVEQ=1)
  asinstr += $(call as-instr,pshufb %xmm0$(comma)%xmm0,-DCONFIG_AS_SSSE3=1)
-@@ -156,8 +161,8 @@ asinstr += $(call as-instr,crc32l %eax$(
+@@ -166,8 +171,8 @@ asinstr += $(call as-instr,crc32l %eax$(
  avx_instr := $(call as-instr,vxorps 
%ymm0$(comma)%ymm1$(comma)%ymm2,-DCONFIG_AS_AVX=1)
  avx2_instr :=$(call as-instr,vpbroadcastb 
%xmm0$(comma)%ymm1,-DCONFIG_AS_AVX2=1)
  
@@ -106,16 +106,16 @@
  
  LDFLAGS := -m elf_$(UTS_MACHINE)
  
-@@ -166,7 +171,9 @@ KBUILD_CFLAGS += -pipe
+@@ -176,7 +181,9 @@ KBUILD_CFLAGS += -pipe
  # Workaround for a gcc prelease that unfortunately was shipped in a suse 
release
  KBUILD_CFLAGS += -Wno-sign-compare
  #
 +ifneq ($(CONFIG_UNWIND_INFO),y)
  KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
 +endif
- # prevent gcc from generating any FP code by mistake
- KBUILD_CFLAGS += -mno-sse -mno-mmx -mno-sse2 -mno-3dnow
- KBUILD_CFLAGS += $(call cc-option,-mno-avx,)
+ 
+ KBUILD_CFLAGS += $(mflags-y)
+ KBUILD_AFLAGS += $(mflags-y)
 --- a/arch/x86/entry/calling.h
 +++ b/arch/x86/entry/calling.h
 @@ -46,6 +46,19 @@ For 32-bit we have the following convent
@@ -140,7 +140,7 @@
  /*
 --- a/arch/x86/entry/entry_32.S
 +++ b/arch/x86/entry/entry_32.S
-@@ -224,6 +224,39 @@ ENTRY(ret_from_fork)
+@@ -214,6 +214,39 @@ ENTRY(ret_from_fork)
        jmp     syscall_exit
  END(ret_from_fork)
  
@@ -182,7 +182,7 @@
        call    schedule_tail
 --- a/arch/x86/entry/entry_64.S
 +++ b/arch/x86/entry/entry_64.S
-@@ -973,6 +973,38 @@ ENTRY(do_softirq_own_stack)
+@@ -874,6 +874,38 @@ ENTRY(do_softirq_own_stack)
        ret
  END(do_softirq_own_stack)
  
@@ -604,7 +604,7 @@
        /* Built-in module parameters. */                               \
        __param : AT(ADDR(__param) - LOAD_OFFSET) {                     \
                VMLINUX_SYMBOL(__start___param) = .;                    \
-@@ -828,3 +830,23 @@
+@@ -826,3 +828,23 @@
        BSS(bss_align)                                                  \
        . = ALIGN(stop_align);                                          \
        VMLINUX_SYMBOL(__bss_stop) = .;
@@ -806,14 +806,14 @@
        smp_prepare_boot_cpu(); /* arch-specific boot-cpu hooks */
 --- a/kernel/Makefile
 +++ b/kernel/Makefile
-@@ -49,6 +49,7 @@ obj-$(CONFIG_SYSTEM_TRUSTED_KEYRING) +=
+@@ -48,6 +48,7 @@ obj-$(CONFIG_UID16) += uid16.o
  obj-$(CONFIG_MODULES) += module.o
  obj-$(CONFIG_MODULE_SIG) += module_signing.o
  obj-$(CONFIG_KALLSYMS) += kallsyms.o
 +obj-$(CONFIG_STACK_UNWIND) += unwind.o
  obj-$(CONFIG_BSD_PROCESS_ACCT) += acct.o
+ obj-$(CONFIG_KEXEC_CORE) += kexec_core.o
  obj-$(CONFIG_KEXEC) += kexec.o
- obj-$(CONFIG_BACKTRACE_SELF_TEST) += backtracetest.o
 --- a/kernel/module.c
 +++ b/kernel/module.c
 @@ -45,6 +45,7 @@
@@ -2579,7 +2579,7 @@
  config BOOT_PRINTK_DELAY
        bool "Delay each boot printk message by N milliseconds"
        depends on DEBUG_KERNEL && PRINTK && GENERIC_CALIBRATE_DELAY
-@@ -1553,7 +1571,8 @@ config FAULT_INJECTION_STACKTRACE_FILTER
+@@ -1540,7 +1558,8 @@ config FAULT_INJECTION_STACKTRACE_FILTER
        depends on FAULT_INJECTION_DEBUG_FS && STACKTRACE_SUPPORT
        depends on !X86_64
        select STACKTRACE
@@ -2589,7 +2589,7 @@
        help
          Provide stacktrace filter for fault-injection capabilities
  
-@@ -1563,7 +1582,8 @@ config LATENCYTOP
+@@ -1550,7 +1569,8 @@ config LATENCYTOP
        depends on DEBUG_KERNEL
        depends on STACKTRACE_SUPPORT
        depends on PROC_FS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.suse/suse-hv-guest-os-id.patch 
new/patches.suse/suse-hv-guest-os-id.patch
--- old/patches.suse/suse-hv-guest-os-id.patch  2015-09-22 17:17:36.000000000 
+0200
+++ new/patches.suse/suse-hv-guest-os-id.patch  2015-09-25 22:51:28.000000000 
+0200
@@ -17,9 +17,9 @@
 --- linux-3.9-rc5-master.orig/drivers/hv/hv.c
 +++ linux-3.9-rc5-master/drivers/hv/hv.c
 @@ -134,6 +134,8 @@ int hv_init(void)
-       int max_leaf;
-       union hv_x64_msr_hypercall_contents hypercall_msr;
+       union hv_x64_msr_hypercall_contents tsc_msr;
        void *virtaddr = NULL;
+       void *va_tsc = NULL;
 +      __u8 d1 = 0x10; /* SuSE */
 +      __u16 d2 = 0x0; /* -d of a.b.c-d */
  
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/patches.suse/vfs-add-super_operations-get_inode_dev 
new/patches.suse/vfs-add-super_operations-get_inode_dev
--- old/patches.suse/vfs-add-super_operations-get_inode_dev     1970-01-01 
01:00:00.000000000 +0100
+++ new/patches.suse/vfs-add-super_operations-get_inode_dev     2015-09-25 
22:51:28.000000000 +0200
@@ -0,0 +1,278 @@
+From: Jeff Mahoney <[email protected]>
+Subject: vfs: add super_operations->get_inode_dev
+References: bsc#927455
+Patch-mainline: Never, Upstream submissions have been met with a request to 
use per-subvolume superblocks, which is unworkable in practice
+
+There are many places where a dev_t:ino_t pair are passed to userspace
+to uniquely describe an inode.  Some file systems, like btrfs, have
+multiple inode namespace internally and use a separate dev_t to make the
+distinction between them.
+
+This patch adds a super_operations->get_inode_dev operation to allow
+the file system to export those dev_ts to callers within the kernel
+for further export to userspace.
+
+Without this patch, things like audit and some perf and trace events
+will not distinguish between subvolumes within a single btrfs filesystem.
+
+Signed-off-by: Jeff Mahoney <[email protected]>
+---
+ arch/arc/kernel/troubleshoot.c             |    2 +-
+ drivers/staging/lustre/lustre/llite/dir.c  |    2 +-
+ drivers/staging/lustre/lustre/llite/file.c |    2 +-
+ fs/locks.c                                 |    4 ++--
+ fs/nfsd/nfs3xdr.c                          |    2 +-
+ fs/nfsd/vfs.c                              |    4 ++--
+ fs/notify/fdinfo.c                         |    4 ++--
+ fs/proc/nommu.c                            |    2 +-
+ fs/proc/task_mmu.c                         |    2 +-
+ fs/proc/task_nommu.c                       |    2 +-
+ fs/stat.c                                  |    2 +-
+ include/linux/fs.h                         |    9 +++++++++
+ include/trace/events/filemap.h             |    2 +-
+ kernel/audit.c                             |    2 +-
+ kernel/audit_watch.c                       |    4 ++--
+ kernel/events/core.c                       |    2 +-
+ mm/memory-failure.c                        |    2 +-
+ security/tomoyo/condition.c                |    2 +-
+ 18 files changed, 30 insertions(+), 21 deletions(-)
+
+--- a/arch/arc/kernel/troubleshoot.c
++++ b/arch/arc/kernel/troubleshoot.c
+@@ -101,7 +101,7 @@ static void show_faulting_vma(unsigned l
+               if (file) {
+                       nm = file_path(file, buf, PAGE_SIZE - 1);
+                       inode = file_inode(vma->vm_file);
+-                      dev = inode->i_sb->s_dev;
++                      dev = inode_get_dev(inode);
+                       ino = inode->i_ino;
+               }
+               pr_info("    @off 0x%lx in [%s]\n"
+--- a/drivers/staging/lustre/lustre/llite/dir.c
++++ b/drivers/staging/lustre/lustre/llite/dir.c
+@@ -1502,7 +1502,7 @@ skip_lmm:
+                       struct lov_user_mds_data *lmdp;
+                       lstat_t st = { 0 };
+ 
+-                      st.st_dev     = inode->i_sb->s_dev;
++                      st.st_dev     = inode_get_dev(inode);
+                       st.st_mode    = body->mode;
+                       st.st_nlink   = body->nlink;
+                       st.st_uid     = body->uid;
+--- a/drivers/staging/lustre/lustre/llite/file.c
++++ b/drivers/staging/lustre/lustre/llite/file.c
+@@ -3013,7 +3013,7 @@ int ll_getattr(struct vfsmount *mnt, str
+       if (res)
+               return res;
+ 
+-      stat->dev = inode->i_sb->s_dev;
++      stat->dev = inode_get_dev(inode);
+       if (ll_need_32bit_api(sbi))
+               stat->ino = cl_fid_build_ino(&lli->lli_fid, 1);
+       else
+--- a/fs/locks.c
++++ b/fs/locks.c
+@@ -2559,8 +2559,8 @@ static void lock_get_status(struct seq_f
+       if (inode) {
+               /* userspace relies on this representation of dev_t */
+               seq_printf(f, "%d %02x:%02x:%ld ", fl_pid,
+-                              MAJOR(inode->i_sb->s_dev),
+-                              MINOR(inode->i_sb->s_dev), inode->i_ino);
++                              MAJOR(inode_get_dev(inode)),
++                              MINOR(inode_get_dev(inode)), inode->i_ino);
+       } else {
+               seq_printf(f, "%d <none>:0 ", fl_pid);
+       }
+--- a/fs/nfsd/nfs3xdr.c
++++ b/fs/nfsd/nfs3xdr.c
+@@ -146,7 +146,7 @@ static __be32 *encode_fsid(__be32 *p, st
+       default:
+       case FSIDSOURCE_DEV:
+               p = xdr_encode_hyper(p, (u64)huge_encode_dev
+-                                   (d_inode(fhp->fh_dentry)->i_sb->s_dev));
++                                   (inode_get_dev(d_inode(fhp->fh_dentry))));
+               break;
+       case FSIDSOURCE_FSID:
+               p = xdr_encode_hyper(p, (u64) fhp->fh_export->ex_fsid);
+--- a/fs/nfsd/vfs.c
++++ b/fs/nfsd/vfs.c
+@@ -892,7 +892,7 @@ static int wait_for_concurrent_writes(st
+       int err = 0;
+ 
+       if (atomic_read(&inode->i_writecount) > 1
+-          || (last_ino == inode->i_ino && last_dev == inode->i_sb->s_dev)) {
++          || (last_ino == inode->i_ino && last_dev == inode_get_dev(inode))) {
+               dprintk("nfsd: write defer %d\n", task_pid_nr(current));
+               msleep(10);
+               dprintk("nfsd: write resume %d\n", task_pid_nr(current));
+@@ -903,7 +903,7 @@ static int wait_for_concurrent_writes(st
+               err = vfs_fsync(file, 0);
+       }
+       last_ino = inode->i_ino;
+-      last_dev = inode->i_sb->s_dev;
++      last_dev = inode_get_dev(inode);
+       return err;
+ }
+ 
+--- a/fs/notify/fdinfo.c
++++ b/fs/notify/fdinfo.c
+@@ -84,7 +84,7 @@ static void inotify_fdinfo(struct seq_fi
+       inode = igrab(mark->inode);
+       if (inode) {
+               seq_printf(m, "inotify wd:%x ino:%lx sdev:%x mask:%x 
ignored_mask:%x ",
+-                         inode_mark->wd, inode->i_ino, inode->i_sb->s_dev,
++                         inode_mark->wd, inode->i_ino, inode_get_dev(inode),
+                          mark->mask, mark->ignored_mask);
+               show_mark_fhandle(m, inode);
+               seq_putc(m, '\n');
+@@ -117,7 +117,7 @@ static void fanotify_fdinfo(struct seq_f
+               if (!inode)
+                       return;
+               seq_printf(m, "fanotify ino:%lx sdev:%x mflags:%x mask:%x 
ignored_mask:%x ",
+-                         inode->i_ino, inode->i_sb->s_dev,
++                         inode->i_ino, inode_get_dev(inode),
+                          mflags, mark->mask, mark->ignored_mask);
+               show_mark_fhandle(m, inode);
+               seq_putc(m, '\n');
+--- a/fs/proc/nommu.c
++++ b/fs/proc/nommu.c
+@@ -46,7 +46,7 @@ static int nommu_region_show(struct seq_
+ 
+       if (file) {
+               struct inode *inode = file_inode(region->vm_file);
+-              dev = inode->i_sb->s_dev;
++              dev = inode_get_dev(inode);
+               ino = inode->i_ino;
+       }
+ 
+--- a/fs/proc/task_mmu.c
++++ b/fs/proc/task_mmu.c
+@@ -281,7 +281,7 @@ show_map_vma(struct seq_file *m, struct
+ 
+       if (file) {
+               struct inode *inode = file_inode(vma->vm_file);
+-              dev = inode->i_sb->s_dev;
++              dev = inode_get_dev(inode);
+               ino = inode->i_ino;
+               pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
+       }
+--- a/fs/proc/task_nommu.c
++++ b/fs/proc/task_nommu.c
+@@ -161,7 +161,7 @@ static int nommu_vma_show(struct seq_fil
+ 
+       if (file) {
+               struct inode *inode = file_inode(vma->vm_file);
+-              dev = inode->i_sb->s_dev;
++              dev = inode_get_dev(inode);
+               ino = inode->i_ino;
+               pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
+       }
+--- a/fs/stat.c
++++ b/fs/stat.c
+@@ -20,7 +20,7 @@
+ 
+ void generic_fillattr(struct inode *inode, struct kstat *stat)
+ {
+-      stat->dev = inode->i_sb->s_dev;
++      stat->dev = inode_get_dev(inode);
+       stat->ino = inode->i_ino;
+       stat->mode = inode->i_mode;
+       stat->nlink = inode->i_nlink;
+--- a/include/linux/fs.h
++++ b/include/linux/fs.h
+@@ -1728,6 +1728,7 @@ struct super_operations {
+                                 struct shrink_control *);
+       long (*free_cached_objects)(struct super_block *,
+                                   struct shrink_control *);
++      dev_t (*get_inode_dev)(const struct inode *);
+ };
+ 
+ /*
+@@ -3040,4 +3041,12 @@ static inline bool dir_relax(struct inod
+ 
+ extern bool path_noexec(const struct path *path);
+ 
++static inline dev_t inode_get_dev(const struct inode *inode)
++{
++      if (inode->i_sb->s_op->get_inode_dev)
++              return inode->i_sb->s_op->get_inode_dev(inode);
++
++      return inode->i_sb->s_dev;
++}
++
+ #endif /* _LINUX_FS_H */
+--- a/include/trace/events/filemap.h
++++ b/include/trace/events/filemap.h
+@@ -29,7 +29,7 @@ DECLARE_EVENT_CLASS(mm_filemap_op_page_c
+               __entry->i_ino = page->mapping->host->i_ino;
+               __entry->index = page->index;
+               if (page->mapping->host->i_sb)
+-                      __entry->s_dev = page->mapping->host->i_sb->s_dev;
++                      __entry->s_dev = inode_get_dev(page->mapping->host);
+               else
+                       __entry->s_dev = page->mapping->host->i_rdev;
+       ),
+--- a/kernel/audit.c
++++ b/kernel/audit.c
+@@ -1711,7 +1711,7 @@ void audit_copy_inode(struct audit_names
+                     const struct inode *inode)
+ {
+       name->ino   = inode->i_ino;
+-      name->dev   = inode->i_sb->s_dev;
++      name->dev   = inode_get_dev(inode);
+       name->mode  = inode->i_mode;
+       name->uid   = inode->i_uid;
+       name->gid   = inode->i_gid;
+--- a/kernel/audit_watch.c
++++ b/kernel/audit_watch.c
+@@ -367,7 +367,7 @@ static int audit_get_nd(struct audit_wat
+       mutex_unlock(&d_backing_inode(parent->dentry)->i_mutex);
+       if (d_is_positive(d)) {
+               /* update watch filter fields */
+-              watch->dev = d_backing_inode(d)->i_sb->s_dev;
++              watch->dev = inode_get_dev(d_backing_inode(d));
+               watch->ino = d_backing_inode(d)->i_ino;
+       }
+       dput(d);
+@@ -495,7 +495,7 @@ static int audit_watch_handle_event(stru
+       };
+ 
+       if (mask & (FS_CREATE|FS_MOVED_TO) && inode)
+-              audit_update_watch(parent, dname, inode->i_sb->s_dev, 
inode->i_ino, 0);
++              audit_update_watch(parent, dname, inode_get_dev(inode), 
inode->i_ino, 0);
+       else if (mask & (FS_DELETE|FS_MOVED_FROM))
+               audit_update_watch(parent, dname, AUDIT_DEV_UNSET, 
AUDIT_INO_UNSET, 1);
+       else if (mask & (FS_DELETE_SELF|FS_UNMOUNT|FS_MOVE_SELF))
+--- a/kernel/events/core.c
++++ b/kernel/events/core.c
+@@ -5902,7 +5902,7 @@ static void perf_event_mmap_event(struct
+                       goto cpy_name;
+               }
+               inode = file_inode(vma->vm_file);
+-              dev = inode->i_sb->s_dev;
++              dev = inode_get_dev(inode);
+               ino = inode->i_ino;
+               gen = inode->i_generation;
+               maj = MAJOR(dev);
+--- a/mm/memory-failure.c
++++ b/mm/memory-failure.c
+@@ -97,7 +97,7 @@ static int hwpoison_filter_dev(struct pa
+       if (mapping == NULL || mapping->host == NULL)
+               return -EINVAL;
+ 
+-      dev = mapping->host->i_sb->s_dev;
++      dev = inode_get_dev(mapping->host);
+       if (hwpoison_filter_dev_major != ~0U &&
+           hwpoison_filter_dev_major != MAJOR(dev))
+               return -EINVAL;
+--- a/security/tomoyo/condition.c
++++ b/security/tomoyo/condition.c
+@@ -721,7 +721,7 @@ void tomoyo_get_attributes(struct tomoyo
+                       stat->gid  = inode->i_gid;
+                       stat->ino  = inode->i_ino;
+                       stat->mode = inode->i_mode;
+-                      stat->dev  = inode->i_sb->s_dev;
++                      stat->dev  = inode_get_dev(inode);
+                       stat->rdev = inode->i_rdev;
+                       obj->stat_valid[i] = true;
+               }

++++++ patches.xen.tar.bz2 ++++++
++++ 15385 lines of diff (skipped)

++++++ series.conf ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:21.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:21.000000000 +0100
@@ -27,11 +27,6 @@
        # DO NOT MODIFY THEM!
        # Send separate patches upstream if you find a problem...
        ########################################################
-       patches.kernel.org/patch-4.2.1
-       patches.kernel.org/patch-4.2.1-2
-       patches.kernel.org/patch-4.2.2-3
-       patches.kernel.org/patch-4.2.3-4
-       patches.kernel.org/patch-4.2.4-5
 
         ########################################################
         # Build fixes that apply to the vanilla kernel too.
@@ -66,7 +61,6 @@
        patches.suse/supported-flag-wildcards
        patches.suse/supported-flag-external
        patches.suse/genksyms-add-override-flag.diff
-       patches.suse/kconfig-automate-kernel-desktop
 
         ########################################################
         # Simple export additions/removals
@@ -103,7 +97,9 @@
         ########################################################
        # x86_64/i386 biarch
         ########################################################
-       patches.arch/x86_64-hpet-64bit-timer.patch
+       # Upstream commit c8b5db7de66b75330a96f9f1ad7376b89646c953
+       # changed this area a lot.
++needs_updating        patches.arch/x86_64-hpet-64bit-timer.patch
 
        ########################################################
        # x86 MCE/MCA (Machine Check Error/Architecture) extensions
@@ -163,7 +159,6 @@
        patches.arch/arm64-0004-net-xgbe-Add-A0-silicon-support.patch
        
patches.arch/arm64-0005-arm64-dts-Add-X-Gene-reboot-driver-dts-node.patch
        
patches.arch/arm64-0006-arm64-Select-reboot-driver-for-X-Gene-platform.patch
-       
patches.arch/arm64-0007-arm64-Do-not-call-enable-PCI-resources-when-specify-.patch
        
patches.arch/arm64-0010-KVM-ARM-Hack-to-enable-VGIC-mapping-on-64k-PAGE_SIZE.patch
 
        # Generic PCIe host bridge, necessary for QEMU and Seattle, upstreaming 
wip
@@ -175,7 +170,7 @@
 +mbrugger      
patches.arch/arm64-gpex-0006-irqchip-gicv3-its-Get-rid-of-struct-msi_controller.patch
 +mbrugger      
patches.arch/arm64-gpex-0007-PCI-MSI-Drop-domain-field-from-msi_controller.patch
 +mbrugger      
patches.arch/arm64-gpex-0008-PCI-MSI-of-Allow-msi_domain-lookup-using-the-PHB-nod.patch
-               
patches.arch/arm64-gpex-0009-pci-Enable-pci-host-generic-support-for-ARM64.patch
++mbrugger      
patches.arch/arm64-gpex-0009-pci-Enable-pci-host-generic-support-for-ARM64.patch
 
        ########################################################
        # S/390
@@ -188,6 +183,7 @@
         ########################################################
        patches.suse/readahead-request-tunables.patch
        patches.fixes/mm-Fix-assertion-mapping-nrpages-0-in-end_writeback.patch
+       patches.suse/vfs-add-super_operations-get_inode_dev
 
         ########################################################
         # IPC patches
@@ -261,9 +257,8 @@
        ########################################################
        # btrfs
        ########################################################
-       patches.suse/btrfs-use-correct-device-for-maps.patch
-       patches.fixes/btrfs-fix-stale-directory-entries-after-fsync-log-replay
-       
patches.fixes/btrfs-fix-stale-dir-entries-after-unlink-inode-eviction-and-fsync
+       
patches.suse/btrfs-advertise-which-crc32c-implementation-is-being-used-on-mount
+       patches.suse/btrfs-provide-super_operations-get_inode_dev
 
        ########################################################
        # Reiserfs Patches
@@ -323,7 +318,7 @@
 
        patches.fixes/scsi-retry-alua-transition-in-progress
 
-       patches.fixes/scsi-dh-queuedata-accessors
++needs_update  patches.fixes/scsi-dh-queuedata-accessors
 
        patches.drivers/megaraid-mbox-fix-SG_IO
 
@@ -350,13 +345,12 @@
        # DRM/Video
        ########################################################
 +jeffm patches.fixes/nouveau-fix-race-with-fence-signaling
-       patches.drivers/0001-vmwgfx-Rework-device-initialization.patch
-       
patches.drivers/0002-drm-vmwgfx-Allow-dropped-masters-render-node-like-ac.patch
        patches.fixes/drm-sti-Remove-select-of-CONFI_FW_LOADER_USER_HELPER
 
        ########################################################
        # video4linux
        ########################################################
+        
patches.fixes/media-c8sectpfe-Remove-select-of-CONFIG_FW_LOADER_USER_HELPER
        patches.fixes/media-media-vivid-osd-fix-info-leak-in-ioctl.patch
 
        ########################################################
@@ -368,7 +362,6 @@
        # Wireless Networking
        ########################################################
        patches.suse/b43-missing-firmware-info.patch
-       patches.fixes/rtlwifi-rtl8821ae-Fix-system-lockups-on-boot.patch
 
        ########################################################
        # ISDN
@@ -391,8 +384,6 @@
        # USB
        ########################################################
 
-       
patches.drivers/0001-qmi_wwan-Add-support-for-Dell-Wireless-5809e-4G-Mode.patch
-
        ########################################################
        # I2C
        ########################################################
@@ -406,7 +397,6 @@
        ##########################################################
        # Sound
        ##########################################################
-       patches.drivers/ALSA-hda-Fix-deadlock-at-error-in-building-PCM
        patches.drivers/ALSA-hda-Disable-64bit-address-for-Creative-HDA-cont
 
        ########################################################
@@ -432,7 +422,6 @@
        # device-mapper
        ########################################################
        patches.suse/dm-emulate-blkrrpart-ioctl
-       patches.fixes/dm-mpath-reattach-dh
        patches.suse/dm-mpath-leastpending-path-update
 +needs_update  patches.suse/dm-mpath-accept-failed-paths
 +needs_update  patches.suse/dm-mpath-detach-existing-hardware-handler
@@ -604,6 +593,7 @@
        patches.xen/xen3-patch-4.0
        patches.xen/xen3-patch-4.1
        patches.xen/xen3-patch-4.2
+       patches.xen/xen3-patch-4.3-rc5
 
        # ports of other patches
        patches.xen/xen3-stack-unwind
@@ -643,6 +633,7 @@
        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

++++++ source-timestamp ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:21.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:21.000000000 +0100
@@ -1,3 +1,3 @@
-2015-10-28 18:49:15 +0100
-GIT Revision: 0491388eeb2f409aa709a00b47cd55553bc6d41b
+2015-11-02 16:35:09 +0100
+GIT Revision: 7b374a4af8a6bf8109b917f5c839dcd85b607ec0
 GIT Branch: stable

++++++ supported.conf ++++++
--- /var/tmp/diff_new_pack.RKdqmO/_old  2015-11-06 00:04:21.000000000 +0100
+++ /var/tmp/diff_new_pack.RKdqmO/_new  2015-11-06 00:04:21.000000000 +0100
@@ -262,6 +262,8 @@
 +external      drivers/block/viodasd                           # IBM legacy 
iSeries virtual disk
                drivers/block/virtio_blk
 +isa           drivers/block/xd
+               drivers/block/xen-blkback/xen-blkback
++base          drivers/block/xen-blkfront
                drivers/bluetooth/bcm203x                       # Broadcom 
Blutonium firmware driver
                drivers/bluetooth/bfusb                         # BlueFRITZ! 
USB driver
                drivers/bluetooth/bluecard_cs                   # Bluetooth 
driver for the Anycom BlueCard (LSE039/LSE041)
@@ -648,6 +650,7 @@
                drivers/input/misc/twl4030-pwrbutton
                drivers/input/misc/uinput                       # User level 
driver support for input subsystem
                drivers/input/misc/winbond-cir
++base          drivers/input/misc/xen-kbdfront
                drivers/input/misc/yealink
                drivers/input/mouse/appletouch
                drivers/input/mouse/bcm5974
@@ -1361,6 +1364,8 @@
 -              drivers/net/wireless/wavelan_cs
 -              drivers/net/wireless/ti/*
 -              drivers/net/wireless/wl3501_cs                  # Planet wl3501 
wireless driver
+               drivers/net/xen-netfront
+               drivers/net/xen-netback/xen-netback
                drivers/net/yellowfin                           # Packet 
Engines Yellowfin G-NIC Gigabit Ethernet driver
 +isa           drivers/net/znet
                drivers/parport/parport
@@ -1381,6 +1386,7 @@
                drivers/pci/hotplug/shpchp                      # Standard Hot 
Plug PCI Controller Driver
                drivers/pci/pci-iomul                           # PCI I/O port 
multiplexer interface
                drivers/pci/pcie/aer/aer_inject # fate #306815
+               drivers/pci/xen-pcifront
                drivers/pcmcia/i82092
 +isa           drivers/pcmcia/i82365
                drivers/pcmcia/pcmcia
@@ -1575,13 +1581,7 @@
 +isa           drivers/scsi/wd7000
                drivers/scsi/virtio_scsi
                drivers/scsi/vmw_pvscsi
-               drivers/serial/8250
-               drivers/serial/8250_accent
-               drivers/serial/8250_boca
-               drivers/serial/8250_exar_st16c554
-               drivers/serial/8250_fourport
-               drivers/serial/8250_hub6
-               drivers/serial/8250_pci
+               drivers/scsi/xen-scsifront
                drivers/serial/icom
                drivers/serial/ioc3_serial
                drivers/serial/ioc4_serial
@@ -1613,6 +1613,14 @@
                drivers/target/iscsi/iscsi_target_mod
 -              drivers/telephony/*
                drivers/thermal/thermal_sys                     # Generic 
thermal zone interface
+               drivers/tty/serial/8250
+               drivers/tty/serial/8250_accent
+               drivers/tty/serial/8250_base
+               drivers/tty/serial/8250_boca
+               drivers/tty/serial/8250_exar_st16c554
+               drivers/tty/serial/8250_fourport
+               drivers/tty/serial/8250_hub6
+               drivers/tty/serial/8250_pci
                drivers/uio/uio
                drivers/uio/uio_aec
                drivers/uio/uio_cif
@@ -1649,6 +1657,7 @@
 +base          drivers/usb/host/uhci-hcd                       # USB Universal 
Host Controller Interface driver
 -              drivers/usb/host/whci/whci-hcd
 +base          drivers/usb/host/xhci-hcd
++base          drivers/usb/host/xhci-pci
                drivers/usb/image/mdc800                                # USB 
Driver for Mustek MDC800 Digital Camera
                drivers/usb/image/microtek                      # Microtek 
Scanmaker X6 USB scanner driver
                drivers/usb/misc/adutux
@@ -1767,6 +1776,7 @@
                drivers/video/cyber2000fb                       # CyberPro 
2000, 2010 and 5000 framebuffer driver
                drivers/video/cyblafb                           # Frame buffer 
driver for Trident Cyberblade/i1 graphics core
                drivers/video/display/display
++base          drivers/video/fbdev/xen-fbfront
                drivers/video/fb_ddc
                drivers/video/fb_sys_fops
                drivers/video/geode/gx1fb                       # Geode 
framebuffer driver
@@ -1876,7 +1886,15 @@
                drivers/xen/tpmback/tpmbk                       # Xen TPM 
device backend
                drivers/xen/usbback/usbbk
                drivers/xen/usbfront/xen-hcd
+               drivers/xen/xen-acpi-processor
+               drivers/xen/xen-evtchn
+               drivers/xen/xen-gntalloc
+               drivers/xen/xen-gntdev
+               drivers/xen/xen-pciback/xen-pciback             # Xen PCI 
device backend
+               drivers/xen/xen-privcmd
+               drivers/xen/xen-scsiback
                drivers/xen/xenbus/xenbus_be                    # Xen XenBus 
backend driver support module
+               drivers/xen/xenfs/xenfs
                fs/9p/9p
 -              fs/adfs/adfs
 -              fs/affs/affs                                    # Amiga 
filesystem support for Linux


Reply via email to