[PATCH xserver 3/4] glamor: Drop glamor_set_screen_pixmap().
Keith Packard
keithp at keithp.com
Thu Jun 1 21:09:40 UTC 2017
Eric Anholt <eric at anholt.net> writes:
> All that was left here was updating the FBO's size. However, the FBO
> size was always set correctly already through
> glamor_set_pixmap_texture() from whoever had attached a new BO to the
> pixmap.
I remember desperately needing this code at some point; do you have any
idea what has changed which makes that no longer true?
The key path to understand is when the screen is resized; I think
server start up is at least easier to validate. My brain is starting to
hurt from tracing this by hand
xf86RandR12ScreenSetSize
drmmode_xf86crtc_resize
drmmode_create_bo
gbm_bo_create
screen->ModifyPixmapHeader (miModifyPixmapHeader)
pPixmap->drawable.width = width;
pPixmap->drawable.height = height;
drmmode_glamor_handle_new_screen_pixmap
drmmode_set_pixmap_bo
glamor_egl_create_textured_pixmap_from_gbm_bo
glamor_set_pixmap_texture
glamor_create_fbo_from_tex
fbo->width = w;
fbo->height = h;
glamor_set_screen_pixmap
pixmap_priv->fbo->width = screen_pixmap->drawable.width;
pixmap_priv->fbo->height = screen_pixmap->drawable.height;
pScreen->width = pScrnPix->drawable.width = width;
pScreen->height = pScrnPix->drawable.height = height;
I don't see any conditionals in this call graph that could avoid setting
the screen pixmap size in miModifyPixmapHeader and the fbo size in
glamor_create_fbo_from_tex, whicm means the extra call to
glamor_set_screen_pixmap is not necessary.
Note that xf86RandR12ScreenSetSize also sets the pixmap size again,
which was probably necessary before drivers regularly supported
reallocating the screen pixmap.
(the other three patches were trivial)
For the series:
Reviewed-by: Keith Packard <keithp at keithp.com>
--
-keith
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <https://lists.x.org/archives/xorg-devel/attachments/20170601/5544e29f/attachment.sig>
More information about the xorg-devel
mailing list