On Wed, Dec 19, 2012 at 04:51:06PM +0000, Chris Wilson wrote:
Avoid clobbering adjacent blocks if they happen to expire earlier and amalgamate together to form the requested hole.
In passing this fixes a regression from commit ea7b1dd44867e9cd6bac67e7c9fc3f128b5b255c Author: Daniel Vetter daniel.vetter@ffwll.ch Date: Fri Feb 18 17:59:12 2011 +0100
drm: mm: track free areas implicitly
which swaps the end address for size (with a potential overflow) and effectively causes the eviction code to clobber almost all earlier buffers above the evictee.
v2: Check the original hole not the adjusted as the coloring may confuse us when later searching for the overlapping nodes. Also make sure that we do apply the range restriction and color adjustment in the same order for both scanning, searching and insertion.
v3: Send the version that was actually tested.
Signed-off-by: Chris Wilson chris@chris-wilson.co.uk Cc: Daniel Vetter daniel.vetter@ffwll.ch
Picked up for -fixes with bugzilla link and Norberts tested-by added, thanks for the patch. -Daniel