]> Git Repo - linux.git/commitdiff
drm/vmwgfx: Don't memcmp equivalent pointers
authorIan Forbes <[email protected]>
Thu, 28 Mar 2024 19:07:16 +0000 (14:07 -0500)
committerZack Rusin <[email protected]>
Thu, 6 Jun 2024 02:38:40 +0000 (22:38 -0400)
These pointers are frequently the same and memcmp does not compare the
pointers before comparing their contents so this was wasting cycles
comparing 16 KiB of memory which will always be equal.

Fixes: bb6780aa5a1d ("drm/vmwgfx: Diff cursors when using cmds")
Signed-off-by: Ian Forbes <[email protected]>
Signed-off-by: Zack Rusin <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
drivers/gpu/drm/vmwgfx/vmwgfx_kms.c

index 9532258a0848c03c20f3b41139b16e4589865575..00c4ff684130129d6765dc6457233c32bc4b4228 100644 (file)
@@ -224,7 +224,7 @@ static bool vmw_du_cursor_plane_has_changed(struct vmw_plane_state *old_vps,
        new_image = vmw_du_cursor_plane_acquire_image(new_vps);
 
        changed = false;
-       if (old_image && new_image)
+       if (old_image && new_image && old_image != new_image)
                changed = memcmp(old_image, new_image, size) != 0;
 
        return changed;
This page took 0.046408 seconds and 4 git commands to generate.