[PATCH] drm/doc: Document that modifiers are always required for fb

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Wed Sep 2 14:29:26 UTC 2020


On Wed, Sep 2, 2020 at 2:49 PM Simon Ser <contact at emersion.fr> wrote:
>
> On Wednesday, September 2, 2020 2:44 PM, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
>
> > > I suppose something similar happens in user-space: gbm_bo_create
> > > without modifiers needs to properly set the implicit modifier, ie.
> > > gbm_bo_get_modifier needs to return the effective modifier. Is this
> > > something already documented?
> >
> > I don't think that happens, but it has come up in discussions. It's
> > kinda different scenario though: getfb2 is for cross-compositor stuff,
> > enabling smooth transitions at boot-up and when switching. So you have
> > a legit reason for mixing modifier-aware userspace with
> > non-modifier-aware userspace. And the modifier-aware userspace would
> > like that everything works with modifiers consistently, including
> > getfb2. But gbm is just within a single process, and that should
> > either run all with modifiers, or not at all, since these worlds just
> > dont mix well. Hence I'm not seeing much use for that, -modesetting
> > being a confused mess nonwithstanding :-)
>
> Well… There's also the case where some legacy Wayland client talks to a
> modifier-aware compositor. gbm_bo_import would be called without a
> modifier, but the compositor expects gbm_bo_get_modifier to work.
>
> Also, wlroots will call gbm_bo_create without a modifier to only let
> the driver pick "safe" modifiers in case passing the full list of
> modifiers results in a black screen. Later on wlroots will call
> gbm_bo_get_modifier to figure out what modifier the driver picked.

I don't think we can do that generally, as pre-modifier clients are
typically also not capable of handling memory planes > format planes,
which will happen with compression (but used out of band communication
for the second plane on AMD in the non-modifier case).
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list