mesa-kms doesn't fall back to using a software cursor if a hardware cursor is unavailable
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mir |
Fix Released
|
High
|
Daniel van Vugt | ||
mir (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
mesa-kms doesn't fall back to using a software cursor if a hardware cursor is unavailable
From a device under investigation:
[2016-08-05 03:00:12.806383] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:12.806537] <WARNING> mesa-kms: set_cursor: drmModeSetCursor failed (No such device or address)
[2016-08-05 03:00:12.806615] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:12.806683] <WARNING> mesa-kms: set_cursor: drmModeSetCursor failed (No such device or address)
[2016-08-05 03:00:12.806756] mirserver: Using hardware cursor
...
[2016-08-05 03:00:42.894705] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.898749] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.899003] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.905167] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.905399] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.913008] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.913226] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.921007] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
[2016-08-05 03:00:42.921227] <WARNING> mesa-kms: move_cursor: drmModeMoveCursor failed (Bad address)
Related branches
- Cemil Azizoglu (community): Approve
- Mir CI Bot: Approve (continuous-integration)
-
Diff: 208 lines (+74/-7)6 files modifiedsrc/platforms/mesa/server/kms/cursor.cpp (+9/-0)
src/platforms/mesa/server/kms/cursor.h (+1/-0)
src/platforms/mesa/server/kms/display.cpp (+13/-3)
src/platforms/mesa/server/kms/real_kms_output.cpp (+2/-2)
tests/unit-tests/graphics/mesa/kms/test_cursor.cpp (+25/-2)
tests/unit-tests/graphics/mesa/kms/test_real_kms_output.cpp (+24/-0)
Changed in mir: | |
assignee: | nobody → Daniel van Vugt (vanvugt) |
milestone: | none → 0.25.0 |
Changed in mir: | |
status: | New → In Progress |
Changed in mir: | |
status: | Fix Committed → Fix Released |
At the same time we should also ensure the Mesa-KMS classes detect if the screen is transformed (zoomed, rotated etc) and switch to the software cursor during such transformations.