[quake3-bugzilla] [Bug 4980] New: [PATCH] Fix unaligned pointer accesses in render command buffer

bugzilla-daemon at icculus.org bugzilla-daemon at icculus.org
Sun May 8 19:07:06 EDT 2011


https://bugzilla.icculus.org/show_bug.cgi?id=4980

           Summary: [PATCH] Fix unaligned pointer accesses in render
                    command buffer
           Product: ioquake3
           Version: SVN HEAD
          Platform: All
        OS/Version: All
            Status: RESOLVED
          Severity: normal
          Priority: P3
         Component: Video
        AssignedTo: zakk at icculus.org
        ReportedBy: mattst88 at gmail.com
         QAContact: quake3-bugzilla at icculus.org


Matt Turner <mattst88 at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |DUPLICATE

Created attachment 2698
  --> https://bugzilla.icculus.org/attachment.cgi?id=2698
Patch to eliminate unaligned accesses

Render commands are stored in a 256kB byte array, which is often dereferenced
as a void or some other type of pointer. On strict architectures, unaligned
accesses such as these are either trapped and handled slowly in the kernel or
disallowed completely.

The attached patch aligns commands to sizeof(void *) boundaries in the command
buffer. Performance should be improved on all platforms and especially so on
platforms where unaligned accesses very slow.

In the time it took to load quake3, and using the keyboard move down to select
Exit from the main screen, it incurred 100904 unaligned traps on my Alpha
system. With the patch, I have not seen a single unaligned trap.

Tested on Alpha/Linux and AMD64/Linux. Please commit.

--- Comment #1 from Matt Turner <mattst88 at gmail.com> 2011-05-08 19:07:06 EDT ---
Stupid bugzilla committed this twice.

*** This bug has been marked as a duplicate of bug 4981 ***

-- 
Configure bugmail: https://bugzilla.icculus.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the quake3-bugzilla mailing list