Leif Delgass wrote:
Attached is a patch to the texmem branch with the changes we've been
discussing. I'd still like to take a closer look at the global heap, but
I've included the code to force initializing the global heap on the first
lock contention for now. I've changed the drm/ddx/texmem code to use the
drmTextureRegion/drm_tex_region_t struct for the SAREA and heap
structures, but only for the drivers converted to the texmem interface. I
also added a test to driAllocateTexture that deletes a placeholder (using
t->tObj == NULL to detect a placeholder) instead of swapping it out. An
explicit flag for detecting a placeholder might make the code more clear,
but using t->tObj should work too. Since placeholders should never be on
the swapped list now, I left in the assert for the swapped list being
empty in the drivers' DestroyContext, though I added code to delete anything on the swapped list in driDestroyTextureHeap just in case that assertion would need to be removed for some reason.

I've also included the optimization in driTexturesGone to keep an existing placeholder if the global region is in use and matches the size and offset of the existing placeholder.

It this looks OK, I will apply it to the branch.
I gave the patch a quick once-over, and it looks good so far. I'm going to study it a bit more carefully before the #dri-devel meeting. I do have a couple comments so far, but their pretty minor.

I need to do some more testing on the Rage 128 driver, but so far things seem to be working except for the problem in the fire Mesa demo, which is still there. It kind of looks like a texture coordinate problem, but I'm not sure yet.
Does r128 exhibit this problem on the trunk?



-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to