mesa-drm/tests
Marijn Suijten dfd00c6250 modetest: allocate and commit atomic request around set_property()
Currently the atomic request is only assigned after `set_property()` is
called, leaving `dev.req` in its uninitialized state causing
`drmModeAtomicAddProperty()` to return an error code, which is printed
as `"Success"` because `errno` is not set by `libdrm` (but it would have
been when non-atomic `drmModeObjectSetProperty()` called an IOCTL
immediately):

    sony-akatsuki-row ~ $ modetest -M msm -a -w 81:ACTIVE:0
    failed to set CRTC 81 property ACTIVE to 0: Success

Solve this by assigning a new atomic request object before calling
`set_property()`, when there are properties to set.  Likewise, commit
these properties after `set_property()` even if there is no other
operation (setting modes or planes) specified.

Furthermore `drmModeObjectSetProperty()` is implemented in terms of
`DRM_IOCTL()` which already returns `-errno` when `ioctl()` returns
`-1`, so we should instead pass `ret` to `strerror()` and get an
accurate error string out of `drmModeAtomicAddProperty()` too.

Fixes: 93220283 ("tests/modetest: Add atomic support")
Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org>
2023-09-10 12:14:06 +00:00
..
amdgpu amdgpu: Use PRI?64 to format uint64_t 2023-09-04 09:31:55 +02:00
etnaviv tests/etnaviv_2d_test: check whether the rendering is correct 2020-12-09 16:00:51 +01:00
exynos libkms: Remove libkms completely 2022-04-15 22:40:29 +00:00
modeprint tests: use drmModeGetConnectorTypeName 2022-07-02 20:13:29 +00:00
modetest modetest: allocate and commit atomic request around set_property() 2023-09-10 12:14:06 +00:00
nouveau use standard __typeof__() instead of GNU extension typeof() 2022-01-19 16:08:31 -08:00
proptest tests: use drmModeGetConnectorTypeName 2022-07-02 20:13:29 +00:00
radeon Revert "Revert "libdrm: remove autotools support"" 2019-10-18 18:05:45 +01:00
tegra tests: tegra: Add VIC flip test 2022-02-23 16:06:49 +01:00
ttmtest fix various typos 2019-04-17 18:23:25 +01:00
util util: remove unused definitions of RED, GREEN, and BLUE 2023-09-08 18:01:43 +00:00
vbltest meson: always define whether headers exist 2020-01-23 17:00:12 +00:00
Android.mk android: simplify the including rule of subdirs 2015-03-20 17:07:21 +00:00
drmdevice.c Remove unused 3rd parameter to open(2) 2022-08-23 22:43:38 +00:00
drmsl.c drmsltest: Check expected neighbours 2017-08-21 13:05:13 +01:00
hash.c tests/hash: return non-zero on failure 2015-04-05 15:33:06 +01:00
meson.build libkms: Remove libkms completely 2022-04-15 22:40:29 +00:00