llvmpipe: weston doesn't render properly with damage regions
It looks like !27703 (merged) introduced support for damage regions in llvmpipe which seems to have broken weston. I've included a video of what the failure looks like here:
Screencast_from_2024-03-11_15-50-57
I've done a little debugging on the issue and I think there are two problems. First the y axis is flipped for the damage region, and second in order to properly flip the y axis we need to know the surface height, and it seems the dri_sw_displaytarget
height and dri_drawable
height are different. I have a hacky fix here that resolved the glitched damage behavior for me.