On 06.06.2016 18:14, Marek Olšák wrote: > On Mon, Jun 6, 2016 at 10:58 AM, Michel Dänzer <mic...@daenzer.net> wrote: >> On 03.06.2016 19:52, Marek Olšák wrote: >>> From: Marek Olšák <marek.ol...@amd.com> >>> >>> Simply ignore the "scanout" flag if the surface dimensions are unlikely >>> to be used by DCE. >> >> I don't like this. >> >> Ideally, there should be feedback from the display server so that he >> state tracker(s) can set the PIPE_BIND_SCANOUT flag only when it's >> really necessary. >> >> In the meantime, if we want to go for a hack like this, it should be in >> the place(s) setting the flag instead of the driver ignoring it. > > Is st/dri the right place then? Or the DDX?
Basically the former for DRI3 and the latter for DRI2 I think. Though I'm afraid it looks like glamor is involved as well. > Can the DDX unset the scanout flag (e.g. reallocate) if a surface > isn't bound as a scanout? The DDX driver could generally allocate pixmaps without the scanout flag. Then if the missing flag is the only thing preventing a DRI2 page flip, the driver could re-allocate the back buffer with the scanout flag. With DRI3, st/dri could (re-)allocate buffers with the scanout flag first and after any window geometry changes, then re-allocate without the flag if the present complete event indicates that page flipping couldn't be used. -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev