On Tue, Oct 27, 2026 at 5:32 AM Tomas M <[email protected]> wrote:
>
> Hi,
>
> I found a cursor hotspot regression in vmwgfx while testing Slax
> with Linux 7.2.9.
>
> Environment:
> - VirtualBox 7.1.10, VMSVGA, 3D acceleration disabled
> - Debian 13 userspace
> - xserver-xorg-core 21.1.16
> - xf86-video-vmware 13.4.0
> - Hardware cursors enabled through normal driver autodetection
>
> Resize cursors appear displaced from the pointer position. For
> example, a horizontal resize cursor with hotspot (13, 6) is drawn
> 13 pixels to the right and 6 pixels below the expected position.
>
> The theme file and XFixesGetCursorImage both report the correct
> hotspot (13, 6), but VirtualBox's VMSVGA diagnostics report (0, 0).
>
> Code inspection points to the GB_ONLY branch introduced by:
>
>   eef295a85082 ("drm/vmwgfx: Restore Guest-Backed only cursor plane support")
>
> In vmw_cursor_plane_atomic_update(), this branch passes only
> vps->base.hotspot_x/y to vmw_send_define_cursor_cmd().
>
> However, xf86-video-vmware supplies the hotspot through
> DRM_VMW_CURSOR_BYPASS, which stores it in
> vps->cursor.legacy.hotspot_x/y.
>
> The position calculation adds both hotspot components, and the
> LEGACY and MOB image paths also include both. Only the GB_ONLY
> image path omits the legacy component.
>
> The attached patch uses the same combined hotspot for the GB_ONLY
> image and its position. It fixes the displacement in our VM.
> Additional tests with custom cursors, bypassing the cursor theme
> and window manager, confirmed that hotspots (13,6), (6,13), (9,9)
> and (7,11) reach the virtual hardware correctly with the fix.
>
> For completeness, this setup also encounters the separately
> reported zero SVGA_REG_CURSOR_MAX_DIMENSION issue:
>
> https://patchew.org/linux/[email protected]/
>
> To make hardware cursors visible for these tests, our kernel also
> has a local workaround that retains a 64px limit specifically for
> GB_ONLY when that register returns zero. MOB validation is unchanged.
>
> Could you review the hotspot fix and consider applying it upstream?
> I can provide further diagnostics if helpful.

Hi, Tomas.

Thanks for this. I have a series that's addressing those cursor
issues. I have a better fix for the vmwgfx-legacy-cursor-limit.patch
issue so I'd skip that one, but do you want to send
vmwgfx-legacy-cursor-hotspot.patch with your signed-off? I can also
create a patch in my series with it but I'll need your ok to include
your signed-off with it.

z

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to