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
