Hello community,

here is the log from the commit of package kernel-source for openSUSE:Factory 
checked in at 2015-04-15 17:42:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-03-29 20:16:33.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-debug.changes  
2015-04-15 17:42:59.000000000 +0200
@@ -1,0 +2,53 @@
+Tue Apr 14 06:39:50 CEST 2015 - [email protected]
+
+- Update config files. (boo#925479)
+  Do not set CONFIG_SYSTEM_TRUSTED_KEYRING until we need it in future
+  openSUSE version:
+  e.g. MODULE_SIG, IMA, PKCS7(new), KEXEC_BZIMAGE_VERIFY_SIG(new)
+- commit 74c332b
+
+-------------------------------------------------------------------
+Mon Apr 13 15:20:55 CEST 2015 - [email protected]
+
+- Linux 3.19.4.
+- commit 51ddeac
+
+-------------------------------------------------------------------
+Wed Apr  8 15:44:22 CEST 2015 - [email protected]
+
+- Btrfs: fix inode eviction infinite loop after cloning into it.
+- commit 0f5134a
+
+-------------------------------------------------------------------
+Wed Apr  8 14:09:23 CEST 2015 - [email protected]
+
+- btrfs: simplify insert_orphan_item (boo#926385).
+- commit 6d5e057
+
+-------------------------------------------------------------------
+Wed Apr  8 12:09:31 CEST 2015 - [email protected]
+
+- drm: Fixup racy refcounting in plane_force_disable (boo#925946).
+- commit 7c1f29a
+
+-------------------------------------------------------------------
+Wed Apr  1 17:14:39 CEST 2015 - [email protected]
+
+- ARMv6: config: Reenable DWC2 host support
+  We need the USB host controller support in order to have
+  network on the Raspberry Pi, as the network is connected
+  via USB.
+- commit a30f81d
+
+-------------------------------------------------------------------
+Tue Mar 31 22:33:18 CEST 2015 - [email protected]
+
+- ARMv6: config: Cleanup default config
+  Previous updates enabled config options that do not make sense
+  on ARMv6. ARMv6 default flavor is actually just a RPi1 kernel,
+  so enabling platform support for hardware that is unavailable there
+  and that conflicts with the Rpi drivers should not be done.
+  This causes the kernel to boot again on a Rpi1.
+- commit b5dbf85
+
+-------------------------------------------------------------------
kernel-default.changes: same change
kernel-desktop.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

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

Other differences:
------------------
++++++ kernel-debug.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -20,7 +20,7 @@
 # needssslcertforbuild
 
 %define srcversion 3.19
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -59,9 +59,9 @@
 Summary:        A Debug Version of the Kernel
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

kernel-default.spec: same change
kernel-desktop.spec: same change
++++++ kernel-docs.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -16,7 +16,7 @@
 #
 
 
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %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:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

++++++ kernel-ec2.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -20,7 +20,7 @@
 # needssslcertforbuild
 
 %define srcversion 3.19
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -59,9 +59,9 @@
 Summary:        The Amazon EC2 Xen Kernel
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

kernel-lpae.spec: same change
++++++ kernel-obs-build.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -19,7 +19,7 @@
 
 #!BuildIgnore: post-build-checks
 
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %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:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

++++++ kernel-obs-qa-xen.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -17,7 +17,7 @@
 # needsrootforbuild
 
 
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %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:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

kernel-obs-qa.spec: same change
++++++ kernel-pae.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -20,7 +20,7 @@
 # needssslcertforbuild
 
 %define srcversion 3.19
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -59,9 +59,9 @@
 Summary:        Kernel with PAE Support
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

kernel-pv.spec: same change
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -18,7 +18,7 @@
 
 
 %define srcversion 3.19
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -30,9 +30,9 @@
 Summary:        The Linux Kernel Sources
 License:        GPL-2.0
 Group:          Development/Sources
-Version:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -24,10 +24,10 @@
 Summary:        Kernel Symbol Versions (modversions)
 License:        GPL-2.0
 Group:          Development/Sources
-Version:        3.19.3
+Version:        3.19.4
 %if %using_buildservice
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

++++++ kernel-vanilla.spec ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:03.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:03.000000000 +0200
@@ -20,7 +20,7 @@
 # needssslcertforbuild
 
 %define srcversion 3.19
-%define patchversion 3.19.3
+%define patchversion 3.19.4
 %define variant %{nil}
 %define vanilla_only 0
 
@@ -59,9 +59,9 @@
 Summary:        The Standard Kernel - without any SUSE patches
 License:        GPL-2.0
 Group:          System/Kernel
-Version:        3.19.3
+Version:        3.19.4
 %if 0%{?is_kotd}
-Release:        <RELEASE>.gf10e7fc
+Release:        <RELEASE>.g74c332b
 %else
 Release:        0
 %endif

kernel-xen.spec: same change
++++++ config.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/arm64/default new/config/arm64/default
--- old/config/arm64/default    2015-03-24 14:35:28.000000000 +0100
+++ new/config/arm64/default    2015-04-14 06:39:50.000000000 +0200
@@ -198,7 +198,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 # CONFIG_JUMP_LABEL is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/arm64/vanilla new/config/arm64/vanilla
--- old/config/arm64/vanilla    2015-03-24 14:35:28.000000000 +0100
+++ new/config/arm64/vanilla    2015-04-14 06:39:50.000000000 +0200
@@ -194,7 +194,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 # CONFIG_JUMP_LABEL is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/armv6hl/default new/config/armv6hl/default
--- old/config/armv6hl/default  2015-03-24 14:35:28.000000000 +0100
+++ new/config/armv6hl/default  2015-04-14 06:39:50.000000000 +0200
@@ -187,7 +187,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
@@ -360,15 +360,7 @@
 CONFIG_ARCH_BCM2835=y
 CONFIG_ARCH_CNS3XXX=y
 CONFIG_MACH_CNS3420VB=y
-CONFIG_ARCH_INTEGRATOR=y
-
-#
-# Integrator Options
-#
-CONFIG_ARCH_INTEGRATOR_AP=y
-CONFIG_ARCH_INTEGRATOR_CP=y
-CONFIG_ARCH_CINTEGRATOR=y
-CONFIG_INTEGRATOR_IMPD1=y
+# CONFIG_ARCH_INTEGRATOR is not set
 CONFIG_ARCH_MXC=y
 CONFIG_MXC_AVIC=y
 CONFIG_MXC_DEBUG_BOARD=y
@@ -432,7 +424,6 @@
 CONFIG_ARCH_PICOXCELL=y
 CONFIG_ARCH_VT8500=y
 CONFIG_ARCH_WM8750=y
-CONFIG_PLAT_VERSATILE=y
 CONFIG_ARM_TIMER_SP804=y
 
 #
@@ -476,7 +467,6 @@
 # CONFIG_ARM_ERRATA_326103 is not set
 CONFIG_ARM_ERRATA_411920=y
 # CONFIG_ARM_ERRATA_364296 is not set
-CONFIG_ICST=y
 
 #
 # Bus support
@@ -597,7 +587,6 @@
 #
 CONFIG_CPUFREQ_DT=m
 # CONFIG_ARM_IMX6Q_CPUFREQ is not set
-CONFIG_ARM_INTEGRATOR=y
 # CONFIG_ARM_KIRKWOOD_CPUFREQ is not set
 
 #
@@ -1768,7 +1757,6 @@
 CONFIG_HMC6352=m
 CONFIG_DS1682=m
 # CONFIG_TI_DAC7512 is not set
-# CONFIG_ARM_CHARLCD is not set
 # CONFIG_BMP085_I2C is not set
 # CONFIG_BMP085_SPI is not set
 CONFIG_USB_SWITCH_FSA9480=m
@@ -2114,10 +2102,6 @@
 CONFIG_SLIP_COMPRESSED=y
 CONFIG_SLIP_SMART=y
 CONFIG_SLIP_MODE_SLIP6=y
-
-#
-# Host-side USB support is needed for USB Network Adapter support
-#
 CONFIG_USB_NET_DRIVERS=m
 CONFIG_USB_CATC=m
 CONFIG_USB_KAWETH=m
@@ -2658,21 +2642,12 @@
 # Serial drivers
 #
 CONFIG_SERIAL_EARLYCON=y
-CONFIG_SERIAL_8250=y
-# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_DMA=y
-CONFIG_SERIAL_8250_NR_UARTS=32
-CONFIG_SERIAL_8250_RUNTIME_UARTS=32
-# CONFIG_SERIAL_8250_EXTENDED is not set
-# CONFIG_SERIAL_8250_DW is not set
-# CONFIG_SERIAL_8250_EM is not set
+# CONFIG_SERIAL_8250 is not set
 
 #
 # Non-8250 serial port support
 #
-CONFIG_SERIAL_AMBA_PL010=y
-CONFIG_SERIAL_AMBA_PL010_CONSOLE=y
+# CONFIG_SERIAL_AMBA_PL010 is not set
 CONFIG_SERIAL_AMBA_PL011=y
 CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
 # CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set
@@ -2686,7 +2661,6 @@
 CONFIG_CONSOLE_POLL=y
 CONFIG_SERIAL_VT8500=y
 CONFIG_SERIAL_VT8500_CONSOLE=y
-CONFIG_SERIAL_OF_PLATFORM=m
 # CONFIG_SERIAL_SCCNXP is not set
 # CONFIG_SERIAL_SC16IS7XX is not set
 # CONFIG_SERIAL_BCM63XX is not set
@@ -4044,8 +4018,6 @@
 #
 # Console display driver support
 #
-CONFIG_VGA_CONSOLE=y
-# CONFIG_VGACON_SOFT_SCROLLBACK is not set
 CONFIG_DUMMY_CONSOLE=y
 CONFIG_FRAMEBUFFER_CONSOLE=y
 CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
@@ -4231,9 +4203,9 @@
 CONFIG_I2C_HID=m
 CONFIG_USB_OHCI_LITTLE_ENDIAN=y
 CONFIG_USB_SUPPORT=y
-CONFIG_USB_COMMON=m
+CONFIG_USB_COMMON=y
 CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB=m
+CONFIG_USB=y
 CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
 
 #
@@ -4329,14 +4301,12 @@
 # CONFIG_USBIP_DEBUG is not set
 # CONFIG_USB_MUSB_HDRC is not set
 # CONFIG_USB_DWC3 is not set
-CONFIG_USB_DWC2=m
-# CONFIG_USB_DWC2_HOST is not set
+CONFIG_USB_DWC2=y
+CONFIG_USB_DWC2_HOST=y
 
 #
 # Gadget/Dual-role mode requires USB Gadget support to be enabled
 #
-# CONFIG_USB_DWC2_PERIPHERAL is not set
-CONFIG_USB_DWC2_DUAL_ROLE=y
 CONFIG_USB_DWC2_PLATFORM=m
 # CONFIG_USB_DWC2_DEBUG is not set
 # CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
@@ -4949,9 +4919,6 @@
 # Common Clock Framework
 #
 CONFIG_COMMON_CLK_WM831X=m
-CONFIG_COMMON_CLK_VERSATILE=y
-# CONFIG_CLK_SP810 is not set
-# CONFIG_CLK_VEXPRESS_OSC is not set
 CONFIG_COMMON_CLK_MAX_GEN=y
 CONFIG_COMMON_CLK_MAX77686=m
 # CONFIG_COMMON_CLK_MAX77802 is not set
@@ -4998,7 +4965,6 @@
 # SOC (System On Chip) specific Drivers
 #
 CONFIG_SOC_TI=y
-CONFIG_SOC_INTEGRATOR_CM=y
 CONFIG_PM_DEVFREQ=y
 
 #
@@ -5219,8 +5185,6 @@
 CONFIG_ARM_GIC=y
 CONFIG_ARM_VIC=y
 CONFIG_ARM_VIC_NR=2
-CONFIG_VERSATILE_FPGA_IRQ=y
-CONFIG_VERSATILE_FPGA_IRQ_NR=4
 # CONFIG_IPACK_BUS is not set
 CONFIG_RESET_CONTROLLER=y
 # CONFIG_FMC is not set
@@ -5731,12 +5695,10 @@
 CONFIG_DEBUG_USER=y
 # CONFIG_DEBUG_LL is not set
 CONFIG_DEBUG_IMX_UART_PORT=1
-CONFIG_DEBUG_LL_INCLUDE="debug/pl01x.S"
-CONFIG_DEBUG_UART_PL01X=y
+CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
+# CONFIG_DEBUG_UART_PL01X is not set
 # CONFIG_DEBUG_UART_8250 is not set
 # CONFIG_DEBUG_UART_BCM63XX is not set
-CONFIG_DEBUG_UART_PHYS=0x16000000
-CONFIG_DEBUG_UART_VIRT=0xf1600000
 CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
 # CONFIG_ARM_KPROBES_TEST is not set
 # CONFIG_PID_IN_CONTEXTIDR is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/armv6hl/vanilla new/config/armv6hl/vanilla
--- old/config/armv6hl/vanilla  2015-03-24 14:35:28.000000000 +0100
+++ new/config/armv6hl/vanilla  2015-04-14 06:39:50.000000000 +0200
@@ -185,7 +185,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/armv7hl/default new/config/armv7hl/default
--- old/config/armv7hl/default  2015-03-24 14:35:28.000000000 +0100
+++ new/config/armv7hl/default  2015-04-14 06:39:50.000000000 +0200
@@ -207,7 +207,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/armv7hl/lpae new/config/armv7hl/lpae
--- old/config/armv7hl/lpae     2015-03-24 14:35:28.000000000 +0100
+++ new/config/armv7hl/lpae     2015-04-14 06:39:50.000000000 +0200
@@ -207,7 +207,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/armv7hl/vanilla new/config/armv7hl/vanilla
--- old/config/armv7hl/vanilla  2015-03-24 14:35:28.000000000 +0100
+++ new/config/armv7hl/vanilla  2015-04-14 06:39:50.000000000 +0200
@@ -205,7 +205,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/debug new/config/i386/debug
--- old/config/i386/debug       2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/debug       2015-04-14 06:39:50.000000000 +0200
@@ -227,7 +227,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/default new/config/i386/default
--- old/config/i386/default     2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/default     2015-04-14 06:39:50.000000000 +0200
@@ -227,7 +227,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/desktop new/config/i386/desktop
--- old/config/i386/desktop     2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/desktop     2015-04-14 06:39:50.000000000 +0200
@@ -230,7 +230,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/ec2 new/config/i386/ec2
--- old/config/i386/ec2 2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/ec2 2015-04-14 06:39:50.000000000 +0200
@@ -201,7 +201,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 # CONFIG_OPROFILE is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/pae new/config/i386/pae
--- old/config/i386/pae 2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/pae 2015-04-14 06:39:50.000000000 +0200
@@ -227,7 +227,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/pv new/config/i386/pv
--- old/config/i386/pv  2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/pv  2015-04-14 06:39:50.000000000 +0200
@@ -227,7 +227,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/vanilla new/config/i386/vanilla
--- old/config/i386/vanilla     2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/vanilla     2015-04-14 06:39:50.000000000 +0200
@@ -225,7 +225,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/i386/xen new/config/i386/xen
--- old/config/i386/xen 2015-03-24 14:35:28.000000000 +0100
+++ new/config/i386/xen 2015-04-14 06:39:50.000000000 +0200
@@ -216,7 +216,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc/default new/config/ppc/default
--- old/config/ppc/default      2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc/default      2015-04-14 06:39:50.000000000 +0200
@@ -220,7 +220,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc/vanilla new/config/ppc/vanilla
--- old/config/ppc/vanilla      2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc/vanilla      2015-04-14 06:39:50.000000000 +0200
@@ -218,7 +218,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64/debug new/config/ppc64/debug
--- old/config/ppc64/debug      2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc64/debug      2015-04-14 06:39:50.000000000 +0200
@@ -249,7 +249,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64/default new/config/ppc64/default
--- old/config/ppc64/default    2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc64/default    2015-04-14 06:39:50.000000000 +0200
@@ -249,7 +249,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64/vanilla new/config/ppc64/vanilla
--- old/config/ppc64/vanilla    2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc64/vanilla    2015-04-14 06:39:50.000000000 +0200
@@ -247,7 +247,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64le/debug new/config/ppc64le/debug
--- old/config/ppc64le/debug    2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc64le/debug    2015-04-14 06:39:50.000000000 +0200
@@ -245,7 +245,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64le/default new/config/ppc64le/default
--- old/config/ppc64le/default  2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc64le/default  2015-04-14 06:39:50.000000000 +0200
@@ -245,7 +245,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/ppc64le/vanilla new/config/ppc64le/vanilla
--- old/config/ppc64le/vanilla  2015-03-24 14:35:28.000000000 +0100
+++ new/config/ppc64le/vanilla  2015-04-14 06:39:50.000000000 +0200
@@ -243,7 +243,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/s390x/default new/config/s390x/default
--- old/config/s390x/default    2015-03-24 14:35:28.000000000 +0100
+++ new/config/s390x/default    2015-04-14 06:39:50.000000000 +0200
@@ -193,7 +193,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/s390x/vanilla new/config/s390x/vanilla
--- old/config/s390x/vanilla    2015-03-24 14:35:28.000000000 +0100
+++ new/config/s390x/vanilla    2015-04-14 06:39:50.000000000 +0200
@@ -191,7 +191,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/debug new/config/x86_64/debug
--- old/config/x86_64/debug     2015-03-24 14:35:28.000000000 +0100
+++ new/config/x86_64/debug     2015-04-14 06:39:50.000000000 +0200
@@ -238,7 +238,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/default new/config/x86_64/default
--- old/config/x86_64/default   2015-03-24 14:35:28.000000000 +0100
+++ new/config/x86_64/default   2015-04-14 06:39:50.000000000 +0200
@@ -238,7 +238,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/desktop new/config/x86_64/desktop
--- old/config/x86_64/desktop   2015-03-24 14:35:28.000000000 +0100
+++ new/config/x86_64/desktop   2015-04-14 06:39:50.000000000 +0200
@@ -241,7 +241,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/ec2 new/config/x86_64/ec2
--- old/config/x86_64/ec2       2015-03-24 14:35:28.000000000 +0100
+++ new/config/x86_64/ec2       2015-04-14 06:39:50.000000000 +0200
@@ -208,7 +208,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 # CONFIG_OPROFILE is not set
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/pv new/config/x86_64/pv
--- old/config/x86_64/pv        2015-03-24 14:35:28.000000000 +0100
+++ new/config/x86_64/pv        2015-04-14 06:39:50.000000000 +0200
@@ -238,7 +238,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/vanilla new/config/x86_64/vanilla
--- old/config/x86_64/vanilla   2015-03-24 14:35:28.000000000 +0100
+++ new/config/x86_64/vanilla   2015-04-14 06:39:50.000000000 +0200
@@ -236,7 +236,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/config/x86_64/xen new/config/x86_64/xen
--- old/config/x86_64/xen       2015-03-24 14:35:28.000000000 +0100
+++ new/config/x86_64/xen       2015-04-14 06:39:50.000000000 +0200
@@ -225,7 +225,7 @@
 CONFIG_SLAB=y
 # CONFIG_SLUB is not set
 # CONFIG_SLOB is not set
-CONFIG_SYSTEM_TRUSTED_KEYRING=y
+# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
 CONFIG_PROFILING=y
 CONFIG_TRACEPOINTS=y
 CONFIG_OPROFILE=m

++++++ patches.fixes.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/btrfs-fix-inode-eviction-infinite-loop-after-cloning.patch 
new/patches.fixes/btrfs-fix-inode-eviction-infinite-loop-after-cloning.patch
--- 
old/patches.fixes/btrfs-fix-inode-eviction-infinite-loop-after-cloning.patch    
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/patches.fixes/btrfs-fix-inode-eviction-infinite-loop-after-cloning.patch    
    2015-04-08 15:45:02.000000000 +0200
@@ -0,0 +1,105 @@
+From: Filipe Manana <[email protected]>
+Date: Mon, 30 Mar 2015 18:23:59 +0100
+Patch-mainline: 4.1
+Git-commit: 2fdc94abb6fc347bb45bb44206d9360211cfc44b
+References: boo#905088
+Subject: [PATCH] Btrfs: fix inode eviction infinite loop after cloning into it
+
+If we attempt to clone a 0 length region into a file we can end up
+inserting a range in the inode's extent_io tree with a start offset
+that is greater then the end offset, which triggers immediately the
+following warning:
+
+[ 3914.619057] WARNING: CPU: 17 PID: 4199 at fs/btrfs/extent_io.c:435 
insert_state+0x4b/0x10b [btrfs]()
+[ 3914.620886] BTRFS: end < start 4095 4096
+(...)
+[ 3914.638093] Call Trace:
+[ 3914.638636]  [<ffffffff81425fd9>] dump_stack+0x4c/0x65
+[ 3914.639620]  [<ffffffff81045390>] warn_slowpath_common+0xa1/0xbb
+[ 3914.640789]  [<ffffffffa03ca44f>] ? insert_state+0x4b/0x10b [btrfs]
+[ 3914.642041]  [<ffffffff810453f0>] warn_slowpath_fmt+0x46/0x48
+[ 3914.643236]  [<ffffffffa03ca44f>] insert_state+0x4b/0x10b [btrfs]
+[ 3914.644441]  [<ffffffffa03ca729>] __set_extent_bit+0x107/0x3f4 [btrfs]
+[ 3914.645711]  [<ffffffffa03cb256>] lock_extent_bits+0x65/0x1bf [btrfs]
+[ 3914.646914]  [<ffffffff8142b2fb>] ? _raw_spin_unlock+0x28/0x33
+[ 3914.648058]  [<ffffffffa03cbac4>] ? test_range_bit+0xcc/0xde [btrfs]
+[ 3914.650105]  [<ffffffffa03cb3c3>] lock_extent+0x13/0x15 [btrfs]
+[ 3914.651361]  [<ffffffffa03db39e>] lock_extent_range+0x3d/0xcd [btrfs]
+[ 3914.652761]  [<ffffffffa03de1fe>] btrfs_ioctl_clone+0x278/0x388 [btrfs]
+[ 3914.654128]  [<ffffffff811226dd>] ? might_fault+0x58/0xb5
+[ 3914.655320]  [<ffffffffa03e0909>] btrfs_ioctl+0xb51/0x2195 [btrfs]
+(...)
+[ 3914.669271] ---[ end trace 14843d3e2e622fc1 ]---
+
+This later makes the inode eviction handler enter an infinite loop that
+keeps dumping the following warning over and over:
+
+[ 3915.117629] WARNING: CPU: 22 PID: 4228 at fs/btrfs/extent_io.c:435 
insert_state+0x4b/0x10b [btrfs]()
+[ 3915.119913] BTRFS: end < start 4095 4096
+(...)
+[ 3915.137394] Call Trace:
+[ 3915.137913]  [<ffffffff81425fd9>] dump_stack+0x4c/0x65
+[ 3915.139154]  [<ffffffff81045390>] warn_slowpath_common+0xa1/0xbb
+[ 3915.140316]  [<ffffffffa03ca44f>] ? insert_state+0x4b/0x10b [btrfs]
+[ 3915.141505]  [<ffffffff810453f0>] warn_slowpath_fmt+0x46/0x48
+[ 3915.142709]  [<ffffffffa03ca44f>] insert_state+0x4b/0x10b [btrfs]
+[ 3915.143849]  [<ffffffffa03ca729>] __set_extent_bit+0x107/0x3f4 [btrfs]
+[ 3915.145120]  [<ffffffffa038c1e3>] ? btrfs_kill_super+0x17/0x23 [btrfs]
+[ 3915.146352]  [<ffffffff811548f6>] ? deactivate_locked_super+0x3b/0x50
+[ 3915.147565]  [<ffffffffa03cb256>] lock_extent_bits+0x65/0x1bf [btrfs]
+[ 3915.148785]  [<ffffffff8142b7e2>] ? _raw_write_unlock+0x28/0x33
+[ 3915.149931]  [<ffffffffa03bc325>] btrfs_evict_inode+0x196/0x482 [btrfs]
+[ 3915.151154]  [<ffffffff81168904>] evict+0xa0/0x148
+[ 3915.152094]  [<ffffffff811689e5>] dispose_list+0x39/0x43
+[ 3915.153081]  [<ffffffff81169564>] evict_inodes+0xdc/0xeb
+[ 3915.154062]  [<ffffffff81154418>] generic_shutdown_super+0x49/0xef
+[ 3915.155193]  [<ffffffff811546d1>] kill_anon_super+0x13/0x1e
+[ 3915.156274]  [<ffffffffa038c1e3>] btrfs_kill_super+0x17/0x23 [btrfs]
+(...)
+[ 3915.167404] ---[ end trace 14843d3e2e622fc2 ]---
+
+So just bail out of the clone ioctl if the length of the region to clone
+is zero, without locking any extent range, in order to prevent this issue
+(same behaviour as a pwrite with a 0 length for example).
+
+This is trivial to reproduce. For example, the steps for the test I just
+made for fstests:
+
+  mkfs.btrfs -f SCRATCH_DEV
+  mount SCRATCH_DEV $SCRATCH_MNT
+
+  touch $SCRATCH_MNT/foo
+  touch $SCRATCH_MNT/bar
+
+  $CLONER_PROG -s 0 -d 4096 -l 0 $SCRATCH_MNT/foo $SCRATCH_MNT/bar
+  umount $SCRATCH_MNT
+
+A test case for fstests follows soon.
+
+CC: <[email protected]>
+Signed-off-by: Filipe Manana <[email protected]>
+Reviewed-by: Omar Sandoval <[email protected]>
+Signed-off-by: David Sterba <[email protected]>
+---
+ fs/btrfs/ioctl.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
+index d49fe8a0f6b5..4c32350095f7 100644
+--- a/fs/btrfs/ioctl.c
++++ b/fs/btrfs/ioctl.c
+@@ -3626,6 +3626,11 @@ static noinline long btrfs_ioctl_clone(struct file 
*file, unsigned long srcfd,
+       if (off + len == src->i_size)
+               len = ALIGN(src->i_size, bs) - off;
+ 
++      if (len == 0) {
++              ret = 0;
++              goto out_unlock;
++      }
++
+       /* verify the end result is block aligned */
+       if (!IS_ALIGNED(off, bs) || !IS_ALIGNED(off + len, bs) ||
+           !IS_ALIGNED(destoff, bs))
+-- 
+2.1.3
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/btrfs-simplify-insert_orphan_item.patch 
new/patches.fixes/btrfs-simplify-insert_orphan_item.patch
--- old/patches.fixes/btrfs-simplify-insert_orphan_item.patch   1970-01-01 
01:00:00.000000000 +0100
+++ new/patches.fixes/btrfs-simplify-insert_orphan_item.patch   2015-04-08 
15:45:02.000000000 +0200
@@ -0,0 +1,51 @@
+From: David Sterba <[email protected]>
+Date: Fri, 2 Jan 2015 19:12:57 +0100
+Subject: [PATCH 13/97] btrfs: simplify insert_orphan_item
+References: boo#926385
+Git-commit: 9c4f61f01d269815bb7c37be3ede59c5587747c6
+Patch-mainline: 4.0
+
+We can search and add the orphan item in one go,
+btrfs_insert_orphan_item will find out if the item already exists.
+
+[Bug introduced in 3.19.1 stable, depends on
+381cf6587f8a8a8e981bc0c1aaaa8859b51dc756 ]
+
+Signed-off-by: David Sterba <[email protected]>
+---
+ fs/btrfs/tree-log.c | 16 ++++------------
+ 1 file changed, 4 insertions(+), 12 deletions(-)
+
+diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
+index 5be45c12dd71..25a1c363a5f4 100644
+--- a/fs/btrfs/tree-log.c
++++ b/fs/btrfs/tree-log.c
+@@ -1254,21 +1254,13 @@ out:
+ }
+ 
+ static int insert_orphan_item(struct btrfs_trans_handle *trans,
+-                            struct btrfs_root *root, u64 offset)
++                            struct btrfs_root *root, u64 ino)
+ {
+       int ret;
+-      struct btrfs_path *path;
+-
+-      path = btrfs_alloc_path();
+-      if (!path)
+-              return -ENOMEM;
+ 
+-      ret = btrfs_find_item(root, path, BTRFS_ORPHAN_OBJECTID,
+-                      offset, BTRFS_ORPHAN_ITEM_KEY, NULL);
+-      if (ret > 0)
+-              ret = btrfs_insert_orphan_item(trans, root, offset);
+-
+-      btrfs_free_path(path);
++      ret = btrfs_insert_orphan_item(trans, root, ino);
++      if (ret == -EEXIST)
++              ret = 0;
+ 
+       return ret;
+ }
+-- 
+2.1.3
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/patches.fixes/drm-Fixup-racy-refcounting-in-plane_force_disable 
new/patches.fixes/drm-Fixup-racy-refcounting-in-plane_force_disable
--- old/patches.fixes/drm-Fixup-racy-refcounting-in-plane_force_disable 
1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/drm-Fixup-racy-refcounting-in-plane_force_disable 
2015-04-08 15:45:02.000000000 +0200
@@ -0,0 +1,73 @@
+From 8218c3f4df3bb1c637c17552405039a6dd3c1ee1 Mon Sep 17 00:00:00 2001
+From: Daniel Vetter <[email protected]>
+Date: Fri, 27 Feb 2015 12:58:13 +0100
+Subject: [PATCH] drm: Fixup racy refcounting in plane_force_disable
+Git-commit: 8218c3f4df3bb1c637c17552405039a6dd3c1ee1
+Patch-mainline: 4.0-rc6
+References: boo#925946
+
+Originally it was impossible to be dropping the last refcount in this
+function since there was always one around still from the idr. But in
+
+commit 83f45fc360c8e16a330474860ebda872d1384c8c
+Author: Daniel Vetter <[email protected]>
+Date: Wed Aug 6 09:10:18 2014 +0200
+
+    drm: Don't grab an fb reference for the idr
+
+we've switched to weak references, broke that assumption but forgot to
+fix it up.
+
+Since we still force-disable planes it's only possible to hit this
+when racing multiple rmfb with fbdev restoring or similar evil things.
+As long as userspace is nice it's impossible to hit the BUG_ON.
+
+But the BUG_ON would most likely be hit from fbdev code, which usually
+invovles the console_lock besides all modeset locks. So very likely
+we'd never get the bug reports if this was hit in the wild, hence
+better be safe than sorry and backport.
+
+Spotted by Matt Roper while reviewing other patches.
+
+[airlied: pull this back into 4.0 - the oops happens there]
+
+Cc: [email protected]
+Cc: Matt Roper <[email protected]>
+Reviewed-by: Matt Roper <[email protected]>
+Signed-off-by: Daniel Vetter <[email protected]>
+Signed-off-by: Dave Airlie <[email protected]>
+Acked-by: Takashi Iwai <[email protected]>
+
+---
+ drivers/gpu/drm/drm_crtc.c |   13 +------------
+ 1 file changed, 1 insertion(+), 12 deletions(-)
+
+--- a/drivers/gpu/drm/drm_crtc.c
++++ b/drivers/gpu/drm/drm_crtc.c
+@@ -531,17 +531,6 @@ void drm_framebuffer_reference(struct dr
+ }
+ EXPORT_SYMBOL(drm_framebuffer_reference);
+ 
+-static void drm_framebuffer_free_bug(struct kref *kref)
+-{
+-      BUG();
+-}
+-
+-static void __drm_framebuffer_unreference(struct drm_framebuffer *fb)
+-{
+-      DRM_DEBUG("%p: FB ID: %d (%d)\n", fb, fb->base.id, 
atomic_read(&fb->refcount.refcount));
+-      kref_put(&fb->refcount, drm_framebuffer_free_bug);
+-}
+-
+ /**
+  * drm_framebuffer_unregister_private - unregister a private fb from the 
lookup idr
+  * @fb: fb to unregister
+@@ -1322,7 +1311,7 @@ void drm_plane_force_disable(struct drm_
+               return;
+       }
+       /* disconnect the plane from the fb and crtc: */
+-      __drm_framebuffer_unreference(plane->old_fb);
++      drm_framebuffer_unreference(plane->old_fb);
+       plane->old_fb = NULL;
+       plane->fb = NULL;
+       plane->crtc = NULL;

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

++++++ series.conf ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:04.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:04.000000000 +0200
@@ -30,6 +30,7 @@
        patches.kernel.org/patch-3.19.1
        patches.kernel.org/patch-3.19.1-2
        patches.kernel.org/patch-3.19.2-3
+       patches.kernel.org/patch-3.19.3-4
 
         ########################################################
         # Build fixes that apply to the vanilla kernel too.
@@ -260,6 +261,8 @@
        # btrfs
        ########################################################
        patches.suse/btrfs-use-correct-device-for-maps.patch
+       patches.fixes/btrfs-simplify-insert_orphan_item.patch
+       patches.fixes/btrfs-fix-inode-eviction-infinite-loop-after-cloning.patch
 
        ########################################################
        # Reiserfs Patches
@@ -344,6 +347,7 @@
        # DRM/Video
        ########################################################
 +jeffm patches.fixes/nouveau-fix-race-with-fence-signaling
+       patches.fixes/drm-Fixup-racy-refcounting-in-plane_force_disable
 
        ########################################################
        # video4linux

++++++ source-timestamp ++++++
--- /var/tmp/diff_new_pack.YkKP7M/_old  2015-04-15 17:43:04.000000000 +0200
+++ /var/tmp/diff_new_pack.YkKP7M/_new  2015-04-15 17:43:04.000000000 +0200
@@ -1,3 +1,3 @@
-2015-03-26 18:34:34 +0100
-GIT Revision: f10e7fc868241eefa52b74da4905c6479570a93d
+2015-04-14 06:39:50 +0200
+GIT Revision: 74c332ba11409dc319e7ed43fbf41416eabe8534
 GIT Branch: stable


Reply via email to