summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-08-24glapi: Fix a possible race in getting current context/dispatch.Chia-I Wu
There is a possbile race that _glapi_Context is reset by another thread after it is tested in GET_CURRENT_CONTEXT but before it is returned. We definitely do not want a lock here to solve the race. To have correct results even under a race, no other threads should reset _glapi_Context (or _glapi_Dispatch). This patch adds a new global variable _glapi_SingleThreaded. Since _glapi_Context or _glapi_Dispatch are no longer reset, _glapi_SingleThreaded is tested instead, before accessing them. DRI drivers compiled with this patch applied will not work with existing libGL.so because of the missing new symbol. If this turns out to be a real problem, this patch should be reverted. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-24glapi: Static mutex does not work on WIN32_THREADS.Chia-I Wu
This re-introduces the race in _glapi_check_multithread, but avoids a crash on windows. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-24glapi: Fix a race in accessing context/dispatch TSD.Chia-I Wu
If multiple threads set/get a TSD at roughly same time for the first time, glthread might (wrongly) initialize it more than once. This patch solves the race by initializing context/dispatch TSDs early. Acked-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-24glapi: Protect _glapi_check_multithread by a mutex.Chia-I Wu
Multiple threads might call _glapi_check_multithread at roughly the same time. It is possbile that all of them are wrongly regarded as firstCall if there is no mutex. This bug causes xeglthreads to crash sometimes. Acked-by: Ian Romanick <ian.d.romanick@intel.com> Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-24mesa: _mesa_layout_parameters() returns a boolean valueBrian Paul
2009-08-24r300: add support for EXT_framebuffer_blitMaciej Cencora
2009-08-24tgsi: Fix build error due to commit acc7da90Cooper Yuan
2009-08-24tgsi: Only free temp uregs.José Fonseca
Shorthand. (cherry picked from commit de911220bbbe74cff0c79b260456ff36122b7b5b)
2009-08-24tgsi: Pass pipe_context as a parameter to ureg_create_shader.José Fonseca
Simplifies migration to tgsi_ureg. (cherry picked from commit f574398c07c41cb8d31249a7186fc178ef7d552a)
2009-08-24tgsi: add generic instruction builderKeith Whitwell
When translating an incoming shader (rather than building one from scratch) it's preferable to be able to call a single, generic instruction emitter rather than figuring out which of the opcode-specific functions to call.
2009-08-24r300g: Set the vector address in the input memory for ↵Cooper Yuan
bypass_vs_clip_and_viewport case
2009-08-24r600: scissor updates for dri2Dave Airlie
Pulled from Dave's WIP patch.
2009-08-24r600: switch to common cs functionsDave Airlie
needed for dri2. Pulled from Dave's WIP patch.
2009-08-24r600: map 16 VS outputsAlex Deucher
Should cover everything exported from the VS
2009-08-23r600: fix logic copy paste errorAlex Deucher
Spotted by airlied.
2009-08-23radeon: add radeon_cs_write_table to the legacy pathAlex Deucher
2009-08-23r600: bump reloc_chunk sizeAlex Deucher
This fixes openarena reloc errors. This needs to be made more dynamic.
2009-08-23r600: fix count for CB/DB target stateAlex Deucher
2009-08-23r300: fix a typoMaciej Cencora
2009-08-23radeon: use proper macroMaciej Cencora
2009-08-23radeon: use bo_is_idle interface for checking if OQ result is availableMaciej Cencora
2009-08-23r300: minor optimizationMaciej Cencora
use properly implemented OUT_BATCH_TABLE where possible
2009-08-23ARB prog lexer: Fix lexer to eat both DOS and Unix line endingsIan Romanick
2009-08-23r600: use persistent bos for shadersAlex Deucher
2009-08-23r600: always emit CB baseAlex Deucher
Not doing so seems to cause lock-ups or rendering problems on some chips. I think there is an logic issue related to CB and VGT on some chips. We ran into similar issues in r600_demo IIRC.
2009-08-23radeon: Fix compilation with legacy memory manager.Pauli Nieminen
2009-08-23radeon: Check from kernel if dma buffer is idle.Pauli Nieminen
This makes sure that objects are leaving wait list only when they are processed by gpu. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-22r600: make state emit more fine grainedAlex Deucher
Gives a nice speed boost in most apps since we only emit what state we need.
2009-08-22shader: fix compilation warningsRenato Caldas
This patch fixes some "implicit declaration of function" compilation errors/warnings on the new shader code. Signed-off-by: Renato Caldas <seventhguardian@gmail.com>
2009-08-22ARB prog parser: include imports.h to kill some compiler warningsLuo Jinghua
2009-08-22r600: move full state to radeon state atomsAlex Deucher
2009-08-22r600: add support for RS880Alex Deucher
2009-08-22i965: Implement frag prog DPH like DP4Ian Romanick
DPH can output to any component, not just to X. This allows fpalu.c to run without hitting the assertion in emit_dph.
2009-08-22st/dri: Remove some debug printsJakob Bornecrantz
2009-08-22st/dri: Find out if the drawable is a pixmapJakob Bornecrantz
Part of this code is disabled since no performance gains where detected with it enabled. This code only detects if it is a pixmap that it is rendering to on the st/xorg DDX since it sets the fake front to the same handle as front.
2009-08-22st/dri: Fix frontbuffer rendering with DRI2Jakob Bornecrantz
2009-08-22st/xorg: Handle fake fronts correctly for pixmapsJakob Bornecrantz
2009-08-22i915g: Remove bad assert on fenceJakob Bornecrantz
2009-08-22glx/dri2: Always use X drawable ID for DRI2 protocol.Michel Dänzer
Fixes protocol errors in cases where the GLX ID is different.
2009-08-22Fix r300 VBO support build on big endian.Michel Dänzer
2009-08-21r600: better default state size.Alex Deucher
Hopefully suokko's emit size impovements will land soon.
2009-08-21Merge branch 'asm-shader-rework-1'Ian Romanick
2009-08-21radeon: fix incorrect loop limit (warned by -O3)Brian Paul
2009-08-21glx: initialize some local vars to silence warnings with -O3Brian Paul
2009-08-21egl: Make _eglChooseDriver return the filename of the driver.Chia-I Wu
The real difference is that the driver suffix is now appended. This also fixes an annoying bug that EGL_DRIVER could not specify the path to a driver because a suffix was always appended. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-21egl: Remove dependency on libX11.Chia-I Wu
libX11 is used to determine the screen number, which is in turned used to determine the DRI driver. However, the sysfs interface for determining the DRI driver is gone, and no working driver depends on this mechanism. Display string parsing is moved to a new function, _eglSplitDisplayString. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-21egl_softpipe: Do not flush unlinked context.Chia-I Wu
An unlinked context is destroyed after _eglMakeCurrent. Flushing such context would cause segfault. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-21egl: Check for null display in handle checking.Chia-I Wu
The display may be NULL when checking a handle. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-21st/egl: Add support for drmModeDirtyFB command if foundJakob Bornecrantz
2009-08-21radeon: Add comment to explain logic for freeing dma buffers.Pauli Nieminen