summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pagano <mpagano@gentoo.org>2015-01-15 19:30:04 -0500
committerMike Pagano <mpagano@gentoo.org>2015-01-15 19:30:04 -0500
commitd3b6891f47be9ecc46753b7da1ae9d4ab09e004a (patch)
tree6f737e9944b7c53cc662363a07ee1d0d22177fe9
parentLinux patch 3.17.8 (diff)
downloadlinux-patches-3.17.tar.gz
linux-patches-3.17.tar.bz2
linux-patches-3.17.zip
Patch to not BUG_ON(\!spin_is_locked()) on UP3.17-123.17
-rw-r--r--0000_README4
-rw-r--r--2800_nouveau-spin-is-locked.patch31
2 files changed, 35 insertions, 0 deletions
diff --git a/0000_README b/0000_README
index 348066f7..79091baa 100644
--- a/0000_README
+++ b/0000_README
@@ -95,6 +95,10 @@ Patch: 2710_ultra-dock-support-for-Thinkpad-X240.patch
From: http://www.kernel.org
Desc: ALSA: hda - Add ultra dock support for Thinkpad X240. See bug #532176.
+Patch: 2800_nouveau-spin-is-locked.patch
+From: http://www.kernel.org
+Desc: nouveau: Do not BUG_ON(!spin_is_locked()) on UP.
+
Patch: 2900_dev-root-proc-mount-fix.patch
From: https://bugs.gentoo.org/show_bug.cgi?id=438380
Desc: Ensure that /dev/root doesn't appear in /proc/mounts when bootint without an initramfs.
diff --git a/2800_nouveau-spin-is-locked.patch b/2800_nouveau-spin-is-locked.patch
new file mode 100644
index 00000000..4cd72c9c
--- /dev/null
+++ b/2800_nouveau-spin-is-locked.patch
@@ -0,0 +1,31 @@
+--- a/drivers/gpu/drm/nouveau/core/core/event.c 2015-01-12 14:01:30.999164123 -0500
++++ b/drivers/gpu/drm/nouveau/core/core/event.c 2015-01-12 14:03:11.229163330 -0500
+@@ -26,7 +26,7 @@
+ void
+ nvkm_event_put(struct nvkm_event *event, u32 types, int index)
+ {
+- BUG_ON(!spin_is_locked(&event->refs_lock));
++ assert_spin_locked(&event->refs_lock);
+ while (types) {
+ int type = __ffs(types); types &= ~(1 << type);
+ if (--event->refs[index * event->types_nr + type] == 0) {
+@@ -39,7 +39,7 @@ nvkm_event_put(struct nvkm_event *event,
+ void
+ nvkm_event_get(struct nvkm_event *event, u32 types, int index)
+ {
+- BUG_ON(!spin_is_locked(&event->refs_lock));
++ assert_spin_locked(&event->refs_lock);
+ while (types) {
+ int type = __ffs(types); types &= ~(1 << type);
+ if (++event->refs[index * event->types_nr + type] == 1) {
+--- a/drivers/gpu/drm/nouveau/core/core/notify.c 2015-01-12 14:01:38.299164065 -0500
++++ b/drivers/gpu/drm/nouveau/core/core/notify.c 2015-01-12 14:03:45.739163057 -0500
+@@ -98,7 +98,7 @@ nvkm_notify_send(struct nvkm_notify *not
+ struct nvkm_event *event = notify->event;
+ unsigned long flags;
+
+- BUG_ON(!spin_is_locked(&event->list_lock));
++ assert_spin_locked(&event->list_lock);
+ BUG_ON(size != notify->size);
+
+ spin_lock_irqsave(&event->refs_lock, flags);