-
-
Notifications
You must be signed in to change notification settings - Fork 70
Description
I've been investigating this problem with hardware cursors with rotated monitors where a region of the screen would be unreachable for the cursor image.
Here is a link to an old issue from hyprland that was closed: hyprwm/Hyprland#7412
Here is a video of my own experience (sorry youtube forced it to be a "short"): https://www.youtube.com/shorts/McS2Es5ZJVk
The logical pointer still enters the area but the cursor image is stuck. It seems to be exactly 10% of the screen in one direction that is unreachable, but that could be coincidence; my monitor is 2560x1440 and I find that exactly 256 pixels to be unreachable, but I also notice thats the same size as the cairo DMA buffer. I'm not certain those things are directly related. Over the past few days I've spent a lot of time digging deep into the pointer and cursor code and I eventually decidedthe problem is likely in the aquamarine backend. I added some debug statements in aquamarine and installed my own build and suddenly the problem was gone. I did a bunch of troubleshooting and narrowed it down to the -march=native flag being present when building the aquamarine-git package from the aur. I'm not sure if the arch makepkg.conf includes that cflag normally but I am on CachyOS and that flag is default on my system.
I am using a Ryzen 9950x zen 5 cpu and RTX 4090 gpu. I assume there is some AVX512 instructions being utilized resulting in some floating point error. This kind of problem is a bit outside of my technical experience so I am not sure where to go from here.