Hello community,
here is the log from the commit of package kernel-source for openSUSE:Factory checked in at 2016-11-13 22:50:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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-64kb.changes 2016-11-05 21:24:18.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.kernel-source.new/kernel-64kb.changes 2016-11-13 22:50:38.000000000 +0100
@@ -1,0 +2,33 @@
+Thu Nov 10 18:06:41 CET 2016 - jslaby@suse.cz
+
+- Linux 4.8.7 (CVE-2016-7042 bnc#1006417 bnc#1008880 boo#1006825
+ bsc#1004517 bsc#1007653 boo#1003298 bsc#1007615).
+- Delete
+ patches.drivers/0001-usbhid-add-ATEN-CS962-to-list-of-quirky-devices.patch.
+- Delete
+ patches.fixes/0001-KEYS-Fix-short-sprintf-buffer-in-proc-keys-show-func.patch.
+- Delete patches.fixes/ALSA-seq-Fix-time-account-regression.
+- Delete
+ patches.fixes/btrfs-fix-races-on-root_log_ctx-lists.patch.
+- Delete
+ patches.fixes/drm-fb-helper-Dont-call-dirty-callback-for-untouched-clips.
+- Delete
+ patches.fixes/drm-i915-gen9-fix-DDB-partitioning-for-multi-screen-.patch.
+- Delete
+ patches.fixes/x86-smpboot-Init-apic-mapping-before-usage.patch.
+- commit c8f02a2
+
+-------------------------------------------------------------------
+Tue Nov 8 10:11:45 CET 2016 - jthumshirn@suse.de
+
+- libfc: fix seconds_since_last_reset miscalculation (boo#1008745).
+- commit da23b4a
+
+-------------------------------------------------------------------
+Mon Nov 7 13:19:16 CET 2016 - jslaby@suse.cz
+
+- drm/i915/gen9: fix DDB partitioning for multi-screen cases
+ (bnc#1008880).
+- commit 4a45dd3
+
+-------------------------------------------------------------------
kernel-debug.changes: same change
kernel-default.changes: same change
kernel-docs.changes: same change
kernel-lpae.changes: same change
kernel-obs-build.changes: same change
kernel-obs-qa.changes: same change
kernel-pae.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-syzkaller.changes: same change
kernel-vanilla.changes: same change
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kernel-64kb.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -20,7 +20,7 @@
# needssslcertforbuild
%define srcversion 4.8
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%define variant %{nil}
%define vanilla_only 0
@@ -60,9 +60,9 @@
Summary: Kernel with 64kb PAGE_SIZE
License: GPL-2.0
Group: System/Kernel
-Version: 4.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-docs.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -16,7 +16,7 @@
#
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -33,9 +33,9 @@
Summary: Kernel Documentation (man pages)
License: GPL-2.0
Group: Documentation/Man
-Version: 4.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
++++++ kernel-lpae.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -20,7 +20,7 @@
# needssslcertforbuild
%define srcversion 4.8
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%define variant %{nil}
%define vanilla_only 0
@@ -60,9 +60,9 @@
Summary: Kernel for LPAE enabled systems
License: GPL-2.0
Group: System/Kernel
-Version: 4.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
++++++ kernel-obs-build.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -19,7 +19,7 @@
#!BuildIgnore: post-build-checks
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%define variant %{nil}
%include %_sourcedir/kernel-spec-macros
@@ -51,9 +51,9 @@
Summary: package kernel and initrd for OBS VM builds
License: GPL-2.0
Group: SLES
-Version: 4.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
++++++ kernel-obs-qa.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -17,7 +17,7 @@
# needsrootforbuild
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%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.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
++++++ kernel-pae.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -20,7 +20,7 @@
# needssslcertforbuild
%define srcversion 4.8
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%define variant %{nil}
%define vanilla_only 0
@@ -60,9 +60,9 @@
Summary: Kernel with PAE Support
License: GPL-2.0
Group: System/Kernel
-Version: 4.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -18,7 +18,7 @@
%define srcversion 4.8
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%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.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -24,10 +24,10 @@
Summary: Kernel Symbol Versions (modversions)
License: GPL-2.0
Group: Development/Sources
-Version: 4.8.6
+Version: 4.8.7
%if %using_buildservice
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
++++++ kernel-syzkaller.spec ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:44.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:44.000000000 +0100
@@ -20,7 +20,7 @@
# needssslcertforbuild
%define srcversion 4.8
-%define patchversion 4.8.6
+%define patchversion 4.8.7
%define variant %{nil}
%define vanilla_only 0
@@ -60,9 +60,9 @@
Summary: Kernel used for fuzzing by syzkaller
License: GPL-2.0
Group: System/Kernel
-Version: 4.8.6
+Version: 4.8.7
%if 0%{?is_kotd}
-Release: <RELEASE>.g1d89b44
+Release: <RELEASE>.gc8f02a2
%else
Release: 0
%endif
kernel-vanilla.spec: same change
++++++ patches.drivers.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/0001-usbhid-add-ATEN-CS962-to-list-of-quirky-devices.patch new/patches.drivers/0001-usbhid-add-ATEN-CS962-to-list-of-quirky-devices.patch
--- old/patches.drivers/0001-usbhid-add-ATEN-CS962-to-list-of-quirky-devices.patch 2016-11-03 14:00:34.000000000 +0100
+++ new/patches.drivers/0001-usbhid-add-ATEN-CS962-to-list-of-quirky-devices.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,44 +0,0 @@
-From 0cc3b1eee3dde5162d9f05a050b0067d55e679ed Mon Sep 17 00:00:00 2001
-From: Oliver Neukum
-Date: Thu, 3 Nov 2016 12:16:18 +0100
-Subject: [PATCH] usbhid: add ATEN CS962 to list of quirky devices
-References: bsc#1007615
-Patch-Mainline: Submitted (20161103 linux-usb@vger.kernel.org)
-
-Like many similar devices it needs a quirk to work.
-Issuing the request gets the device into an irrecoverable state.
-
-Signed-off-by: Oliver Neukum
-CC: stable@vger.kernel.org
----
- drivers/hid/hid-ids.h | 1 +
- drivers/hid/usbhid/hid-quirks.c | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
-index 4ed9a4f..f6d1f34 100644
---- a/drivers/hid/hid-ids.h
-+++ b/drivers/hid/hid-ids.h
-@@ -176,6 +176,7 @@
- #define USB_DEVICE_ID_ATEN_4PORTKVM 0x2205
- #define USB_DEVICE_ID_ATEN_4PORTKVMC 0x2208
- #define USB_DEVICE_ID_ATEN_CS682 0x2213
-+#define USB_DEVICE_ID_ATEN_CS692 0x8021
-
- #define USB_VENDOR_ID_ATMEL 0x03eb
- #define USB_DEVICE_ID_ATMEL_MULTITOUCH 0x211c
-diff --git a/drivers/hid/usbhid/hid-quirks.c b/drivers/hid/usbhid/hid-quirks.c
-index b4b8c6a..85d5ff2 100644
---- a/drivers/hid/usbhid/hid-quirks.c
-+++ b/drivers/hid/usbhid/hid-quirks.c
-@@ -62,6 +62,7 @@ static const struct hid_blacklist {
- { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_4PORTKVM, HID_QUIRK_NOGET },
- { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_4PORTKVMC, HID_QUIRK_NOGET },
- { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_CS682, HID_QUIRK_NOGET },
-+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_CS692, HID_QUIRK_NOGET },
- { USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_FIGHTERSTICK, HID_QUIRK_NOGET },
- { USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_COMBATSTICK, HID_QUIRK_NOGET },
- { USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_FLIGHT_SIM_ECLIPSE_YOKE, HID_QUIRK_NOGET },
---
-2.6.2
-
++++++ patches.fixes.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/0001-KEYS-Fix-short-sprintf-buffer-in-proc-keys-show-func.patch new/patches.fixes/0001-KEYS-Fix-short-sprintf-buffer-in-proc-keys-show-func.patch
--- old/patches.fixes/0001-KEYS-Fix-short-sprintf-buffer-in-proc-keys-show-func.patch 2016-11-03 09:36:24.000000000 +0100
+++ new/patches.fixes/0001-KEYS-Fix-short-sprintf-buffer-in-proc-keys-show-func.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,74 +0,0 @@
-From 03dab869b7b239c4e013ec82aea22e181e441cfc Mon Sep 17 00:00:00 2001
-From: David Howells
-Date: Wed, 26 Oct 2016 15:01:54 +0100
-Subject: [PATCH] KEYS: Fix short sprintf buffer in /proc/keys show function
-
-Git-commit: 03dab869b7b239c4e013ec82aea22e181e441cfc
-Patch-mainline: v4.9-rc3
-References: bsc#1004517, CVE-2016-7042
-
-This fixes CVE-2016-7042.
-
-Fix a short sprintf buffer in proc_keys_show(). If the gcc stack protector
-is turned on, this can cause a panic due to stack corruption.
-
-The problem is that xbuf[] is not big enough to hold a 64-bit timeout
-rendered as weeks:
-
- (gdb) p 0xffffffffffffffffULL/(60*60*24*7)
- $2 = 30500568904943
-
-That's 14 chars plus NUL, not 11 chars plus NUL.
-
-Expand the buffer to 16 chars.
-
-I think the unpatched code apparently works if the stack-protector is not
-enabled because on a 32-bit machine the buffer won't be overflowed and on a
-64-bit machine there's a 64-bit aligned pointer at one side and an int that
-isn't checked again on the other side.
-
-The panic incurred looks something like:
-
-Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: ffffffff81352ebe
-CPU: 0 PID: 1692 Comm: reproducer Not tainted 4.7.2-201.fc24.x86_64 #1
-Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011
- 0000000000000086 00000000fbbd2679 ffff8800a044bc00 ffffffff813d941f
- ffffffff81a28d58 ffff8800a044bc98 ffff8800a044bc88 ffffffff811b2cb6
- ffff880000000010 ffff8800a044bc98 ffff8800a044bc30 00000000fbbd2679
-Call Trace:
- [<ffffffff813d941f>] dump_stack+0x63/0x84
- [<ffffffff811b2cb6>] panic+0xde/0x22a
- [<ffffffff81352ebe>] ? proc_keys_show+0x3ce/0x3d0
- [<ffffffff8109f7f9>] __stack_chk_fail+0x19/0x30
- [<ffffffff81352ebe>] proc_keys_show+0x3ce/0x3d0
- [<ffffffff81350410>] ? key_validate+0x50/0x50
- [<ffffffff8134db30>] ? key_default_cmp+0x20/0x20
- [<ffffffff8126b31c>] seq_read+0x2cc/0x390
- [<ffffffff812b6b12>] proc_reg_read+0x42/0x70
- [<ffffffff81244fc7>] __vfs_read+0x37/0x150
- [<ffffffff81357020>] ? security_file_permission+0xa0/0xc0
- [<ffffffff81246156>] vfs_read+0x96/0x130
- [<ffffffff81247635>] SyS_read+0x55/0xc0
- [<ffffffff817eb872>] entry_SYSCALL_64_fastpath+0x1a/0xa4
-
-Reported-by: Ondrej Kozina
-Signed-off-by: David Howells
-Tested-by: Ondrej Kozina
-cc: stable@vger.kernel.org
-Signed-off-by: James Morris
-Acked-by: Lee, Chun-Yi
----
- security/keys/proc.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/security/keys/proc.c
-+++ b/security/keys/proc.c
-@@ -181,7 +181,7 @@ static int proc_keys_show(struct seq_fil
- struct timespec now;
- unsigned long timo;
- key_ref_t key_ref, skey_ref;
-- char xbuf[12];
-+ char xbuf[16];
- int rc;
-
- struct keyring_search_context ctx = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/0001-libfc-fix-seconds_since_last_reset-miscalculation.patch new/patches.fixes/0001-libfc-fix-seconds_since_last_reset-miscalculation.patch
--- old/patches.fixes/0001-libfc-fix-seconds_since_last_reset-miscalculation.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/0001-libfc-fix-seconds_since_last_reset-miscalculation.patch 2016-11-10 18:06:41.000000000 +0100
@@ -0,0 +1,49 @@
+From e559bbb0e6ba91e98a834630260b2da6af316d63 Mon Sep 17 00:00:00 2001
+From: Johannes Thumshirn
+Date: Mon, 7 Nov 2016 12:07:01 +0100
+Subject: [PATCH] libfc: fix seconds_since_last_reset miscalculation
+Patch-mainline: Submitted, https://patchwork.kernel.org/patch/9416885/
+References: boo#1008745
+
+Commit 540eb1eef 'scsi: libfc: fix seconds_since_last_reset calculation'
+removed the use of 'struct timespec' from fc_get_host_stats(). This broke the
+output of 'fcoeadm -s' after kernel 4.8-rc1 as lport->boot_time - jiffies
+could become negative as in this example:
+
+$ cat /sys/class/fc_host/host8/statistics/seconds_since_last_reset
+0x10624dd2f1977b4
+
+Take this into account so
+/sys/class/fc_host/hostX/statistics/seconds_since_last_reset is sane again.
+
+Fixes: 540eb1eef ('scsi: libfc: fix seconds_since_last_reset calculation')
+Signed-off-by: Johannes Thumshirn
+Tested-by: Holger Schranz
+---
+ drivers/scsi/libfc/fc_lport.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/scsi/libfc/fc_lport.c b/drivers/scsi/libfc/fc_lport.c
+index 04ce7cf..475c0a9 100644
+--- a/drivers/scsi/libfc/fc_lport.c
++++ b/drivers/scsi/libfc/fc_lport.c
+@@ -304,11 +304,15 @@ struct fc_host_statistics *fc_get_host_stats(struct Scsi_Host *shost)
+ unsigned int cpu;
+ u64 fcp_in_bytes = 0;
+ u64 fcp_out_bytes = 0;
++ unsigned long boot_time = lport->boot_time;
+
+ fc_stats = &lport->host_stats;
+ memset(fc_stats, 0, sizeof(struct fc_host_statistics));
+
+- fc_stats->seconds_since_last_reset = (lport->boot_time - jiffies) / HZ;
++ if (boot_time > jiffies)
++ fc_stats->seconds_since_last_reset = (boot_time - jiffies) / HZ;
++ else
++ fc_stats->seconds_since_last_reset = (jiffies - boot_time) / HZ;
+
+ for_each_possible_cpu(cpu) {
+ struct fc_stats *stats;
+--
+1.8.5.6
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/ALSA-seq-Fix-time-account-regression new/patches.fixes/ALSA-seq-Fix-time-account-regression
--- old/patches.fixes/ALSA-seq-Fix-time-account-regression 2016-11-03 09:36:24.000000000 +0100
+++ new/patches.fixes/ALSA-seq-Fix-time-account-regression 1970-01-01 01:00:00.000000000 +0100
@@ -1,42 +0,0 @@
-From 9b50898ad96c793a8f7cde9d8f281596d752a7dd Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Tue, 25 Oct 2016 15:56:35 +0200
-Subject: [PATCH] ALSA: seq: Fix time account regression
-Git-commit: 9b50898ad96c793a8f7cde9d8f281596d752a7dd
-Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git
-Patch-mainline: Queued in subsystem maintainer repository
-References: boo#1006825
-
-The recent rewrite of the sequencer time accounting using timespec64
-in the commit [3915bf294652: ALSA: seq_timer: use monotonic times
-internally] introduced a bad regression. Namely, the time reported
-back doesn't increase but goes back and forth.
-
-The culprit was obvious: the delta is stored to the result (cur_time =
-delta), instead of adding the delta (cur_time += delta)!
-
-Let's fix it.
-
-Fixes: 3915bf294652 ('ALSA: seq_timer: use monotonic times internally')
-Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=177571
-Reported-by: Yves Guillemot
-Cc: # v4.8+
-Signed-off-by: Takashi Iwai
-
----
- sound/core/seq/seq_timer.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/sound/core/seq/seq_timer.c
-+++ b/sound/core/seq/seq_timer.c
-@@ -448,8 +448,8 @@ snd_seq_real_time_t snd_seq_timer_get_cu
-
- ktime_get_ts64(&tm);
- tm = timespec64_sub(tm, tmr->last_update);
-- cur_time.tv_nsec = tm.tv_nsec;
-- cur_time.tv_sec = tm.tv_sec;
-+ cur_time.tv_nsec += tm.tv_nsec;
-+ cur_time.tv_sec += tm.tv_sec;
- snd_seq_sanity_real_time(&cur_time);
- }
- spin_unlock_irqrestore(&tmr->lock, flags);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/btrfs-fix-races-on-root_log_ctx-lists.patch new/patches.fixes/btrfs-fix-races-on-root_log_ctx-lists.patch
--- old/patches.fixes/btrfs-fix-races-on-root_log_ctx-lists.patch 2016-11-03 09:36:24.000000000 +0100
+++ new/patches.fixes/btrfs-fix-races-on-root_log_ctx-lists.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,91 +0,0 @@
-From: Chris Mason
-Subject: [PATCH] btrfs: fix races on root_log_ctx lists
-Patch-mainline: Submitted, linux-btrfs@vger.kernel.org, 27 Oct 2016
-References: bsc#1007653
-
-btrfs_remove_all_log_ctxs takes a shortcut where it avoids walking the
-list because it knows all of the waiters are patiently waiting for the
-commit to finish.
-
-But, there's a small race where btrfs_sync_log can remove itself from
-the list if it finds a log commit is already done. Also, it uses
-list_del_init() to remove itself from the list, but there's no way to
-know if btrfs_remove_all_log_ctxs has already run, so we don't know for
-sure if it is safe to call list_del_init().
-
-This gets rid of all the shortcuts for btrfs_remove_all_log_ctxs(), and
-just calls it with the proper locking.
-
-This is part two of the corruption fixed by cbd60aa7cd1. I should have
-done this in the first place, but convinced myself the optimizations were
-safe. A 12 hour run of dbench 2048 will eventually trigger a list debug
-WARN_ON for the list_del_init() in btrfs_sync_log().
-
-Fixes: d1433debe7f4346cf9fc0dafc71c3137d2a97bc4
-Reported-by: Dave Jones
-cc: stable@vger.kernel.org # 3.15+
-Signed-off-by: Chris Mason
-Acked-by: Jeff Mahoney
----
- fs/btrfs/tree-log.c | 20 ++++++--------------
- 1 file changed, 6 insertions(+), 14 deletions(-)
-
-diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
-index 688df71..4b1c0a6 100644
---- a/fs/btrfs/tree-log.c
-+++ b/fs/btrfs/tree-log.c
-@@ -2713,14 +2713,12 @@ static inline void btrfs_remove_all_log_ctxs(struct btrfs_root *root,
- int index, int error)
- {
- struct btrfs_log_ctx *ctx;
-+ struct btrfs_log_ctx *safe;
-
-- if (!error) {
-- INIT_LIST_HEAD(&root->log_ctxs[index]);
-- return;
-- }
--
-- list_for_each_entry(ctx, &root->log_ctxs[index], list)
-+ list_for_each_entry_safe(ctx, safe, &root->log_ctxs[index], list) {
-+ list_del_init(&ctx->list);
- ctx->log_ret = error;
-+ }
-
- INIT_LIST_HEAD(&root->log_ctxs[index]);
- }
-@@ -2961,13 +2959,9 @@ int btrfs_sync_log(struct btrfs_trans_handle *trans,
- mutex_unlock(&root->log_mutex);
-
- out_wake_log_root:
-- /*
-- * We needn't get log_mutex here because we are sure all
-- * the other tasks are blocked.
-- */
-+ mutex_lock(&log_root_tree->log_mutex);
- btrfs_remove_all_log_ctxs(log_root_tree, index2, ret);
-
-- mutex_lock(&log_root_tree->log_mutex);
- log_root_tree->log_transid_committed++;
- atomic_set(&log_root_tree->log_commit[index2], 0);
- mutex_unlock(&log_root_tree->log_mutex);
-@@ -2978,10 +2972,8 @@ out_wake_log_root:
- if (waitqueue_active(&log_root_tree->log_commit_wait[index2]))
- wake_up(&log_root_tree->log_commit_wait[index2]);
- out:
-- /* See above. */
-- btrfs_remove_all_log_ctxs(root, index1, ret);
--
- mutex_lock(&root->log_mutex);
-+ btrfs_remove_all_log_ctxs(root, index1, ret);
- root->log_transid_committed++;
- atomic_set(&root->log_commit[index1], 0);
- mutex_unlock(&root->log_mutex);
---
-2.9.3
-
---
-To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
-the body of a message to majordomo@vger.kernel.org
-More majordomo info at http://vger.kernel.org/majordomo-info.html
-
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/drm-fb-helper-Dont-call-dirty-callback-for-untouched-clips new/patches.fixes/drm-fb-helper-Dont-call-dirty-callback-for-untouched-clips
--- old/patches.fixes/drm-fb-helper-Dont-call-dirty-callback-for-untouched-clips 2016-11-03 09:36:24.000000000 +0100
+++ new/patches.fixes/drm-fb-helper-Dont-call-dirty-callback-for-untouched-clips 1970-01-01 01:00:00.000000000 +0100
@@ -1,53 +0,0 @@
-From: Takashi Iwai
-Subject: [PATCH v2] drm/fb-helper: Don't call dirty callback for untouched clips
-Date: Thu, 20 Oct 2016 17:05:30 +0200
-Message-id: <20161020150530.5787-1-tiwai@suse.de>
-Patch-mainline: Submitted, dri-devel ML
-References: boo#1003298
-
-Since 4.7 kernel, we've seen the error messages like
-
- kernel: [TTM] Buffer eviction failed
- kernel: qxl 0000:00:02.0: object_init failed for (4026540032, 0x00000001)
- kernel: [drm:qxl_alloc_bo_reserved [qxl]] *ERROR* failed to allocate VRAM BO
-
-on QXL when switching and accessing on VT. The culprit was the
-generic deferred_io code (qxl driver switched to it since 4.7).
-There is a race between the dirty clip update and the call of
-callback.
-
-In drm_fb_helper_dirty(), the dirty clip is updated in the spinlock,
-while it kicks off the update worker outside the spinlock. Meanwhile
-the update worker clears the dirty clip in the spinlock, too. Thus,
-when drm_fb_helper_dirty() is called concurrently, schedule_work() is
-called after the clip is cleared in the first worker call.
-
-This patch addresses it by validating the clip before calling the
-dirty fb callback.
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98322
-Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=1003298
-Fixes: eaa434defaca ('drm/fb-helper: Add fb_deferred_io support')
-Cc:
-Reviewed-by: Ville Syrjälä
-Signed-off-by: Takashi Iwai
-
----
-v1->v2: simplified the code as suggested by Ville
-
- drivers/gpu/drm/drm_fb_helper.c | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
---- a/drivers/gpu/drm/drm_fb_helper.c
-+++ b/drivers/gpu/drm/drm_fb_helper.c
-@@ -644,7 +644,9 @@ static void drm_fb_helper_dirty_work(str
- clip->x2 = clip->y2 = 0;
- spin_unlock_irqrestore(&helper->dirty_lock, flags);
-
-- helper->fb->funcs->dirty(helper->fb, NULL, 0, 0, &clip_copy, 1);
-+ /* call dirty callback only when it has been really touched */
-+ if (clip_copy.x1 < clip_copy.x2 && clip_copy.y1 < clip_copy.y2)
-+ helper->fb->funcs->dirty(helper->fb, NULL, 0, 0, &clip_copy, 1);
- }
-
- /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/x86-smpboot-Init-apic-mapping-before-usage.patch new/patches.fixes/x86-smpboot-Init-apic-mapping-before-usage.patch
--- old/patches.fixes/x86-smpboot-Init-apic-mapping-before-usage.patch 2016-11-03 09:36:24.000000000 +0100
+++ new/patches.fixes/x86-smpboot-Init-apic-mapping-before-usage.patch 1970-01-01 01:00:00.000000000 +0100
@@ -1,62 +0,0 @@
-From: Thomas Gleixner
-Date: Sat, 29 Oct 2016 13:42:42 +0200
-Subject: x86/smpboot: Init apic mapping before usage
-Git-commit: 1e90a13d0c3dc94512af1ccb2b6563e8297838fa
-Patch-mainline: v4.9-rc3
-References: bnc#1006417
-
-The recent changes, which forced the registration of the boot cpu on UP
-systems, which do not have ACPI tables, have been fixed for systems w/o
-local APIC, but left a wreckage for systems which have neither ACPI nor
-mptables, but the CPU has an APIC, e.g. virtualbox.
-
-The boot process crashes in prefill_possible_map() as it wants to register
-the boot cpu, which needs to access the local apic, but the local APIC is
-not yet mapped.
-
-There is no reason why init_apic_mapping() can't be invoked before
-prefill_possible_map(). So instead of playing another silly early mapping
-game, as the ACPI/mptables code does, we just move init_apic_mapping()
-before the call to prefill_possible_map().
-
-In hindsight, I should have noticed that combination earlier.
-
-Sorry for the churn (also in stable)!
-
-Fixes: ff8560512b8d ("x86/boot/smp: Don't try to poke disabled/non-existent APIC")
-Reported-and-debugged-by: Michal Necasek
-Reported-and-tested-by: Wolfgang Bauer
-Cc: prarit@redhat.com
-Cc: ville.syrjala@linux.intel.com
-Cc: michael.thayer@oracle.com
-Cc: knut.osmundsen@oracle.com
-Cc: frank.mehnert@oracle.com
-Cc: Borislav Petkov
-Cc: stable@vger.kernel.org
-Link: http://lkml.kernel.org/r/alpine.DEB.2.20.1610282114380.5053@nanos
-Signed-off-by: Thomas Gleixner
-Signed-off-by: Jiri Slaby
----
- arch/x86/kernel/setup.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
---- a/arch/x86/kernel/setup.c
-+++ b/arch/x86/kernel/setup.c
-@@ -1222,11 +1222,16 @@ void __init setup_arch(char **cmdline_p)
- if (smp_found_config)
- get_smp_config();
-
-+ /*
-+ * Systems w/o ACPI and mptables might not have it mapped the local
-+ * APIC yet, but prefill_possible_map() might need to access it.
-+ */
-+ init_apic_mappings();
-+
- prefill_possible_map();
-
- init_cpu_to_node();
-
-- init_apic_mappings();
- io_apic_init_mappings();
-
- kvm_guest_init();
++++++ patches.kernel.org.tar.bz2 ++++++
++++ 4486 lines of diff (skipped)
++++++ series.conf ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:45.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:45.000000000 +0100
@@ -33,6 +33,7 @@
patches.kernel.org/patch-4.8.3-4
patches.kernel.org/patch-4.8.4-5
patches.kernel.org/patch-4.8.5-6
+ patches.kernel.org/patch-4.8.6-7
########################################################
# Build fixes that apply to the vanilla kernel too.
@@ -107,7 +108,6 @@
# Upstream commit c8b5db7de66b75330a96f9f1ad7376b89646c953
# changed this area a lot.
+needs_updating patches.arch/x86_64-hpet-64bit-timer.patch
- patches.fixes/x86-smpboot-Init-apic-mapping-before-usage.patch
########################################################
# x86 MCE/MCA (Machine Check Error/Architecture) extensions
@@ -252,7 +252,6 @@
patches.suse/btrfs-provide-super_operations-get_inode_dev
patches.suse/revert-btrfs-fix-lockdep-warning-on-deadlock-against-an-inode-s-log-mutex.patch
patches.suse/revert-btrfs-improve-performance-on-fsync-against-new-inode-after-rename-unlink.patch
- patches.fixes/btrfs-fix-races-on-root_log_ctx-lists.patch
########################################################
# Reiserfs Patches
@@ -316,13 +315,12 @@
patches.fixes/sd_liberal_28_sense_invalid.diff
patches.fixes/scsi-ibmvscsi-module_alias.patch
-
+ patches.fixes/0001-libfc-fix-seconds_since_last_reset-miscalculation.patch
########################################################
# DRM/Video
########################################################
patches.fixes/drm-i915-Fix-S4-resume-breakage
- patches.fixes/drm-fb-helper-Dont-call-dirty-callback-for-untouched-clips
patches.drivers/drm-radeon-Always-store-CRTC-relative-radeon_crtc-cu
patches.drivers/drm-radeon-Also-call-cursor_move_locked-when-the-cur
patches.drivers/drm-radeon-Hide-the-HW-cursor-while-it-s-out-of-boun
@@ -374,12 +372,10 @@
patches.drivers/Input-ALPS-handle-0-pressure-1F-events.patch
patches.drivers/Input-ALPS-allow-touchsticks-to-report-pressure.patch
patches.drivers/Input-ALPS-set-DualPoint-flag-for-74-03-28-devices.patch
- patches.drivers/0001-usbhid-add-ATEN-CS962-to-list-of-quirky-devices.patch
##########################################################
# Sound
##########################################################
- patches.fixes/ALSA-seq-Fix-time-account-regression
########################################################
# Char / serial
@@ -430,8 +426,6 @@
#
##########################################################
- # Bug 1004517 CVE-2016-7042: kernel: Stack corruption while reading /proc/keys
- patches.fixes/0001-KEYS-Fix-short-sprintf-buffer-in-proc-keys-show-func.patch
##########################################################
# Audit
++++++ source-timestamp ++++++
--- /var/tmp/diff_new_pack.sHJvMU/_old 2016-11-13 22:50:45.000000000 +0100
+++ /var/tmp/diff_new_pack.sHJvMU/_new 2016-11-13 22:50:45.000000000 +0100
@@ -1,3 +1,3 @@
-2016-11-03 14:00:34 +0100
-GIT Revision: 1d89b442286067e71ee61ece724de522883ddc9a
+2016-11-10 18:06:41 +0100
+GIT Revision: c8f02a2ee2f11267ebd79f5790ed60b4ea6a8969
GIT Branch: stable