summaryrefslogtreecommitdiff
path: root/src/i830_memory.c
diff options
context:
space:
mode:
authorAlbert Damen <albrt@gmx.net>2009-03-30 11:38:02 -0700
committerKeith Packard <keithp@keithp.com>2009-03-30 11:38:02 -0700
commite964d4e53af3a47de6d09c884be1cc0044d03bea (patch)
tree48f8630cfb83f22bbacf9b968323da0d57447ccb /src/i830_memory.c
parent51cf8a453c2bc2e8604bfc41a649e971c1ba5026 (diff)
Non-GEM allocations incorrectly force TILE_NONE (bug 20797)
With -intel 2.6.3 performance was very bad when using a non gem enabled kernel (2.6.27) and EXA. For example sauerbraten ran with 4 fps and screensaver GLBlur with 1 fps. With -intel 2.6.1 performance was good using the same kernel. Git bisecting led me to commit f1ed73c1ef3e3daa9f695194dcc813167cbcb53d (in 2.6 branch) "Make i830_allocate_memory take tiling parameters" as first bad commit. Using gdb I found tiling was set exactly the same in 2.6.3 as in 2.6.1, so that was good (TILE_XMAJOR for front, back and depth buffers). Looking further I found the line mem->tiling = TILE_NONE; (line 961 in src/i830_memory.c) at the end of i830_allocate_memory suspicious, as mem->tiling now already gets set via i830_allocate_aperture and some buffers do have tiling. Removing that line indeed fixed the performance issue. Now sauerbraten runs with 30+ fps and GLBlur runs smoothly.
Diffstat (limited to 'src/i830_memory.c')
-rw-r--r--src/i830_memory.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/src/i830_memory.c b/src/i830_memory.c
index 052d906e..e3314c53 100644
--- a/src/i830_memory.c
+++ b/src/i830_memory.c
@@ -958,8 +958,6 @@ i830_allocate_memory(ScrnInfoPtr pScrn, const char *name,
}
}
- mem->tiling = TILE_NONE;
-
return mem;
}