--- /dev/null
+From 91ba9f28a3de97761c2b5fd5df5d88421268e507 Mon Sep 17 00:00:00 2001
+From: Deepak Rawat <drawat@vmware.com>
+Date: Tue, 15 May 2018 15:39:09 +0200
+Subject: drm/vmwgfx: Set dmabuf_size when vmw_dmabuf_init is successful
+
+From: Deepak Rawat <drawat@vmware.com>
+
+commit 91ba9f28a3de97761c2b5fd5df5d88421268e507 upstream.
+
+SOU primary plane prepare_fb hook depends upon dmabuf_size to pin up BO
+(and not call a new vmw_dmabuf_init) when a new fb size is same as
+current fb. This was changed in a recent commit which is causing
+page_flip to fail on VM with low display memory and multi-mon failure
+when cycle monitors from secondary display.
+
+Cc: <stable@vger.kernel.org> # 4.14, 4.16
+Fixes: 20fb5a635a0c ("drm/vmwgfx: Unpin the screen object backup buffer when not used")
+Signed-off-by: Deepak Rawat <drawat@vmware.com>
+Reviewed-by: Sinclair Yeh <syeh@vmware.com>
+Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+--- a/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c
+@@ -530,6 +530,8 @@ vmw_sou_primary_plane_prepare_fb(struct
+ return ret;
+ }
+
++ vps->dmabuf_size = size;
++
+ /*
+ * TTM already thinks the buffer is pinned, but make sure the
+ * pin_count is upped.