On 21-01-2026 19:17, Xaver Hugl wrote:
+       DRM_MODE_ATOMIC_ASYNC_NOT_SUPP_PLANE,
I don't think it makes sense to have an enum value for this, the
per-plane support for async pageflips should be reported to the
compositor in a way that doesn't require atomic tests. Once that's
done, trying to do async flips with it is just invalid API usage.
Sure will remove this!
For getting to know if async flip is supported on a plane or not IN_FORMATS_ASYNC can be used.

+       DRM_MODE_ATOMIC_ASYNC_MODIFIER_NOT_SUPP,
Same here, there's already a drm property for async-capable
format+modifiers on each plane, so this falls under invalid API usage.

One more thing I noticed for the failure codes: I think it would be
better if INVALID_API_USAGE and unspecified errors would be split,
with the latter being the default error code.
Afaict with the current version the compositor would be told it's
using the API wrong when it's just a normal test failure that the
driver hasn't added a more specific error code for yet.
INVALID_API_USAGE would then just be for actual "you should know
better than to try this" cases, which should never happen in correct
compositor operation.
Got it, all driver compatibility/not supported will go with proper error code and anything already known to compositor but still sends it wrongly will fall under INVALID_API_USAGE.
Other than that, the API looks good to me. I'll put together a KWin
implementation soon.

Thanks for the inputs and review.


Thanks and Regards,
Arun R Murthy
-------------------

Reply via email to