From: Dave Airlie Date: Wed, 6 Oct 2010 02:38:04 +0000 (+1000) Subject: Merge remote branch 'nouveau/for-airlied' of ../drm-nouveau-next into drm-core-next X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=0c8eb0dc65f5a78b252eeff6c729ba4741390e23;p=GitHub%2FLineageOS%2Fandroid_kernel_samsung_universal7580.git Merge remote branch 'nouveau/for-airlied' of ../drm-nouveau-next into drm-core-next [airlied - add fix for vmwgfx build] * 'nouveau/for-airlied' of ../drm-nouveau-next: (93 commits) drm/ttm: restructure to allow driver to plug in alternate memory manager drm/ttm: introduce utility function to free an allocated memory node drm/nouveau: fix thinkos in mem timing table recordlen check drm/nouveau: parse voltage from perf 0x40 entires drm/nouveau: don't use the default pll limits in table v2.1 on nv50+ cards drm/nv50: Fix large 3D performance regression caused by the interchannel sync patches. drm/nouveau: Synchronize buffer object moves in hardware. drm/nouveau: Use semaphores to handle inter-channel sync in hardware. drm/nouveau: Provide a means to have arbitrary work run on fence completion. drm/nouveau: Minor refactoring/cleanup of the fence code. drm/nouveau: Add a module option to force card POST. drm/nv50: prevent (IB_PUT == IB_GET) for occurring unless idle drm/nv0x-nv4x: Leave the 0x40 bit untouched when changing CRE_LCD. drm/nv30-nv40: Fix postdivider mask when writing engine/memory PLLs. drm/nouveau: Fix perf table parsing on BMP v5.25. drm/nouveau: fix required mode bandwidth calculation for DP drm/nouveau: fix typo in c2aa91afea5f7e7ae4530fabd37414a79c03328c drm/nva3: split pm backend out from nv50 drm/nouveau: run perflvl and M table scripts on mem clock change drm/nouveau: pass perflvl struct to clock_pre() ... --- 0c8eb0dc65f5a78b252eeff6c729ba4741390e23 diff --cc drivers/gpu/drm/vmwgfx/vmwgfx_fb.c index b27a9f2887d,870967a97c1..e7304188a78 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c @@@ -612,6 -602,6 +612,7 @@@ int vmw_dmabuf_to_start_of_vram(struct { struct ttm_buffer_object *bo = &vmw_bo->base; struct ttm_placement ne_placement = vmw_vram_ne_placement; ++ struct drm_mm_node *mm_node; int ret = 0; ne_placement.lpfn = bo->num_pages; @@@ -625,11 -615,6 +626,12 @@@ if (unlikely(ret != 0)) goto err_unlock; ++ mm_node = bo->mem.mm_node; + if (bo->mem.mem_type == TTM_PL_VRAM && - bo->mem.mm_node->start < bo->num_pages) ++ mm_node->start < bo->num_pages) + (void) ttm_bo_validate(bo, &vmw_sys_placement, false, + false, false); + ret = ttm_bo_validate(bo, &ne_placement, false, false, false); /* Could probably bug on */