]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 6 May 2018 00:43:25 +0000 (17:43 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 6 May 2018 00:43:25 +0000 (17:43 -0700)
added patches:
drm-vmwgfx-fix-a-buffer-object-leak.patch
test_firmware-fix-setting-old-custom-fw-path-back-on-exit-second-try.patch

queue-4.4/drm-vmwgfx-fix-a-buffer-object-leak.patch [new file with mode: 0644]
queue-4.4/series
queue-4.4/test_firmware-fix-setting-old-custom-fw-path-back-on-exit-second-try.patch [new file with mode: 0644]

diff --git a/queue-4.4/drm-vmwgfx-fix-a-buffer-object-leak.patch b/queue-4.4/drm-vmwgfx-fix-a-buffer-object-leak.patch
new file mode 100644 (file)
index 0000000..2253d03
--- /dev/null
@@ -0,0 +1,33 @@
+From 13f149d47392782baafd96d54d4e65f3b5ca342f Mon Sep 17 00:00:00 2001
+From: Thomas Hellstrom <thellstrom@vmware.com>
+Date: Thu, 26 Apr 2018 09:59:30 +0200
+Subject: drm/vmwgfx: Fix a buffer object leak
+
+From: Thomas Hellstrom <thellstrom@vmware.com>
+
+commit 13f149d47392782baafd96d54d4e65f3b5ca342f upstream.
+
+A buffer object leak was introduced when fixing a premature buffer
+object release. Fix this.
+
+Cc: <stable@vger.kernel.org>
+Fixes: 73a88250b709 ("Fix a destoy-while-held mutex problem.")
+Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+Reviewed-by: Deepak Rawat <drawat@vmware.com>
+Reviewed-by: Sinclair Yeh <syeh@vmware.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/vmwgfx/vmwgfx_kms.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+@@ -1991,6 +1991,7 @@ void vmw_kms_helper_resource_finish(stru
+               vmw_kms_helper_buffer_finish(res->dev_priv, NULL, ctx->buf,
+                                            out_fence, NULL);
++      vmw_dmabuf_unreference(&ctx->buf);
+       vmw_resource_unreserve(res, false, NULL, 0);
+       mutex_unlock(&res->dev_priv->cmdbuf_mutex);
+ }
index 89855748aa631f3fb0f8efbe4dd543e46aa78c25..27f9bc6d36bdd765a3e5842d88f8438bb9dbfbde 100644 (file)
@@ -21,3 +21,5 @@ rdma-ucma-allow-resolving-address-w-o-specifying-source-address.patch
 rdma-mlx5-protect-from-shift-operand-overflow.patch
 net-usb-qmi_wwan-add-support-for-ublox-r410m-pid-0x90b2.patch
 ib-mlx5-use-unlimited-rate-when-static-rate-is-not-supported.patch
+drm-vmwgfx-fix-a-buffer-object-leak.patch
+test_firmware-fix-setting-old-custom-fw-path-back-on-exit-second-try.patch
diff --git a/queue-4.4/test_firmware-fix-setting-old-custom-fw-path-back-on-exit-second-try.patch b/queue-4.4/test_firmware-fix-setting-old-custom-fw-path-back-on-exit-second-try.patch
new file mode 100644 (file)
index 0000000..855a906
--- /dev/null
@@ -0,0 +1,44 @@
+From e538409257d0217a9bc715686100a5328db75a15 Mon Sep 17 00:00:00 2001
+From: Ben Hutchings <ben.hutchings@codethink.co.uk>
+Date: Wed, 4 Apr 2018 22:38:49 +0200
+Subject: test_firmware: fix setting old custom fw path back on exit, second try
+
+From: Ben Hutchings <ben.hutchings@codethink.co.uk>
+
+commit e538409257d0217a9bc715686100a5328db75a15 upstream.
+
+Commit 65c79230576 tried to clear the custom firmware path on exit by
+writing a single space to the firmware_class.path parameter.  This
+doesn't work because nothing strips this space from the value stored
+and fw_get_filesystem_firmware() only ignores zero-length paths.
+
+Instead, write a null byte.
+
+Fixes: 0a8adf58475 ("test: add firmware_class loader test")
+Fixes: 65c79230576 ("test_firmware: fix setting old custom fw path back on exit")
+Signed-off-by: Ben Hutchings <ben.hutchings@codethink.co.uk>
+Acked-by: Luis R. Rodriguez <mcgrof@kernel.org>
+Cc: stable <stable@vger.kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+
+---
+ tools/testing/selftests/firmware/fw_filesystem.sh |    6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+--- a/tools/testing/selftests/firmware/fw_filesystem.sh
++++ b/tools/testing/selftests/firmware/fw_filesystem.sh
+@@ -29,9 +29,11 @@ test_finish()
+               echo "$OLD_TIMEOUT" >/sys/class/firmware/timeout
+       fi
+       if [ "$OLD_FWPATH" = "" ]; then
+-              OLD_FWPATH=" "
++              # A zero-length write won't work; write a null byte
++              printf '\000' >/sys/module/firmware_class/parameters/path
++      else
++              echo -n "$OLD_FWPATH" >/sys/module/firmware_class/parameters/path
+       fi
+-      echo -n "$OLD_FWPATH" >/sys/module/firmware_class/parameters/path
+       rm -f "$FW"
+       rmdir "$FWPATH"
+ }