dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH -fixes 0/3] vmwgfx fixes
@ 2011-11-09  9:25 Thomas Hellstrom
  2011-11-09  9:25 ` [PATCH 1/3] vmwgfx: Close screen object system Thomas Hellstrom
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Thomas Hellstrom @ 2011-11-09  9:25 UTC (permalink / raw)
  To: airlied; +Cc: dri-devel

A couple of bugfixes for vmwgfx kms.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/3] vmwgfx: Close screen object system
  2011-11-09  9:25 [PATCH -fixes 0/3] vmwgfx fixes Thomas Hellstrom
@ 2011-11-09  9:25 ` Thomas Hellstrom
  2011-11-09  9:25 ` [PATCH 2/3] vmwgfx: Initialize clip rect loop correctly in surface dirty Thomas Hellstrom
  2011-11-09  9:25 ` [PATCH 3/3] vmwgfx: Only allow 64x64 cursors Thomas Hellstrom
  2 siblings, 0 replies; 4+ messages in thread
From: Thomas Hellstrom @ 2011-11-09  9:25 UTC (permalink / raw)
  To: airlied; +Cc: dri-devel

From: Jakob Bornecrantz <jakob@vmware.com>

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
---
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index 03daefa..f3ab1fe 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@ -1323,7 +1323,10 @@ int vmw_kms_close(struct vmw_private *dev_priv)
 	 * drm_encoder_cleanup which takes the lock we deadlock.
 	 */
 	drm_mode_config_cleanup(dev_priv->dev);
-	vmw_kms_close_legacy_display_system(dev_priv);
+	if (dev_priv->sou_priv)
+		vmw_kms_close_screen_object_display(dev_priv);
+	else
+		vmw_kms_close_legacy_display_system(dev_priv);
 	return 0;
 }
 
-- 
1.7.4.4

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/3] vmwgfx: Initialize clip rect loop correctly in surface dirty
  2011-11-09  9:25 [PATCH -fixes 0/3] vmwgfx fixes Thomas Hellstrom
  2011-11-09  9:25 ` [PATCH 1/3] vmwgfx: Close screen object system Thomas Hellstrom
@ 2011-11-09  9:25 ` Thomas Hellstrom
  2011-11-09  9:25 ` [PATCH 3/3] vmwgfx: Only allow 64x64 cursors Thomas Hellstrom
  2 siblings, 0 replies; 4+ messages in thread
From: Thomas Hellstrom @ 2011-11-09  9:25 UTC (permalink / raw)
  To: airlied; +Cc: dri-devel

From: Jakob Bornecrantz <jakob@vmware.com>

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
---
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index f3ab1fe..40c7e61 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@ -410,8 +410,9 @@ static int do_surface_dirty_sou(struct vmw_private *dev_priv,
 	top = clips->y1;
 	bottom = clips->y2;
 
-	clips_ptr = clips;
-	for (i = 1; i < num_clips; i++, clips_ptr += inc) {
+	/* skip the first clip rect */
+	for (i = 1, clips_ptr = clips + inc;
+	     i < num_clips; i++, clips_ptr += inc) {
 		left = min_t(int, left, (int)clips_ptr->x1);
 		right = max_t(int, right, (int)clips_ptr->x2);
 		top = min_t(int, top, (int)clips_ptr->y1);
-- 
1.7.4.4

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 3/3] vmwgfx: Only allow 64x64 cursors
  2011-11-09  9:25 [PATCH -fixes 0/3] vmwgfx fixes Thomas Hellstrom
  2011-11-09  9:25 ` [PATCH 1/3] vmwgfx: Close screen object system Thomas Hellstrom
  2011-11-09  9:25 ` [PATCH 2/3] vmwgfx: Initialize clip rect loop correctly in surface dirty Thomas Hellstrom
@ 2011-11-09  9:25 ` Thomas Hellstrom
  2 siblings, 0 replies; 4+ messages in thread
From: Thomas Hellstrom @ 2011-11-09  9:25 UTC (permalink / raw)
  To: airlied; +Cc: dri-devel

From: Jakob Bornecrantz <jakob@vmware.com>

Snooping code expects this to be the case.

Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
---
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index 40c7e61..880e285 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@ -105,6 +105,10 @@ int vmw_du_crtc_cursor_set(struct drm_crtc *crtc, struct drm_file *file_priv,
 	struct vmw_dma_buffer *dmabuf = NULL;
 	int ret;
 
+	/* A lot of the code assumes this */
+	if (handle && (width != 64 || height != 64))
+		return -EINVAL;
+
 	if (handle) {
 		ret = vmw_user_surface_lookup_handle(dev_priv, tfile,
 						     handle, &surface);
-- 
1.7.4.4

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-11-09  9:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-09  9:25 [PATCH -fixes 0/3] vmwgfx fixes Thomas Hellstrom
2011-11-09  9:25 ` [PATCH 1/3] vmwgfx: Close screen object system Thomas Hellstrom
2011-11-09  9:25 ` [PATCH 2/3] vmwgfx: Initialize clip rect loop correctly in surface dirty Thomas Hellstrom
2011-11-09  9:25 ` [PATCH 3/3] vmwgfx: Only allow 64x64 cursors Thomas Hellstrom

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox