If the caller requires an exactly constructed bo, abandon the attempt if
we cannot set the tiling as specified.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
As we reacquire master when initialisation the next gen of the server,
to keep the reference counting consistent we need to release our master
reference on CloseScreen.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
As we set the flags for the migration extents, but only operate upon the
boxes in the region, we need to be careful to be sure to migrate data
outside of the boxes overwritten.
Fixes regression from
commit 94cbe7bf7b [2.21.10]
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 20 19:40:44 2013 +0100
sna: Mark overwriting CopyArea as not needing the dst damage
If we start passing around regions rather than extents, we coud do
finergrained migration decision.
Reported-by: Clemens Eisserer <linuxhippy@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55244
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
So that the tarball matches the git checkout.
Reported-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
The miWideDash may also call PolyPoint rather than emit spans, so make
sure that we correctly prepare sna_poly_point before calling mi*.
Reported-by: Tobias Brodel <toby.jamesjoy@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66104
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
The combination is just about valid and used along some odd paths, so
replace the assertion with a regular checks.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Fixes regression from
commit 53c113c3cc [2.21.10]
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 21 19:27:24 2013 +0100
sna: Allow PutImage to write inplace using manual tiling
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66059
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Presume that the non-pipelined drawrect is sufficient to serialise
operations to the render cache.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Otherwise it appears that the hardware will readback from memory
bypassing its render cache after a change of modes. There is probably a
lot more subtly to it than this, but this appears to be a good first
approximation.
Reported-by: Clemens Eisserer <linuxhippy@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51422
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Merge the device open in the main driver with the probing so that we can
open the path explicitly passed in by the PlatformProbe and keep that fd
around for the main driver and so avoid a later search.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
With Zaphod enabled, we will try to acquire/release the drmMaster
several times on each enter/leave VT. This obviously flags an error (and
drops the master too early), so track the number of references we still
hold for drmMaster.
References: https://bugs.freedesktop.org/show_bug.cgi?id=66041
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Sergio Callegari found a case in LibreOffice that copied cloned pixmaps
onto each other and then modified one of the pair. This was triggering
the hack put in to speed up firefox scrolling, unfortunately.
Reported-by: Sergio Callegari <sergio.callegari@gmail.com>
References: https://bugs.freedesktop.org/show_bug.cgi?id=65665
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This reverts commit cc08f6e0ef.
Prefer to keep the frontbuffer as tiled, and use an per-crtc pixmap in
case the frontbuffer is not suitable as the framebuffer.
gen4 has a restricted DSPSTRIDE limit for tiled surfaces lower than the
maximum supported size of the CRTC. So we need to double check
whether tiling the scanout is supported before attempting to allocate a
tiled scanout.
Reported-by: Paul Donohue <freedesktop-bugs@PaulSD.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=65099
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
In preparation for extending the kernel interface to be more explicit
about when we need to flush a direct write to the scanout.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Since the upload buffer is special in that it simultaneously exists on
both the CPU and GPU, we need to be extremely careful in marking the cpu
hint flag and asserting it. In particular, the new stricter assert was
firing in the CompositeTrapezoids fallback path.
Reported-by: Jiri Slaby <jirislaby@gmail.com>
References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>