Some textures are not rendering correctly in apitrace

José Fonseca jose.r.fonseca at gmail.com
Mon Nov 10 13:19:00 PST 2014


Thanks for that.

I think you should file a bug against the Mesa r600 OpenGL driver, and add
a link to
http://lists.freedesktop.org/archives/apitrace/2014-November/001011.html .
It's not clear whether this is a HW or SW problem, but the fact that it
doesn't happen with a different card means that the r600 driver developers
are you best bet to make further progress.

IIUC the r600 driver is that the glMapBufferRange(GL_ARRAY_BUFFER, ...,
GL_STATIC_DRAW) returns uncached memory which is mapped into the PCI
device. The fact that the rendering is fine even tracing means the data was
correctly stored in the device's memory, so my guess is that when the CPU
tries to read the data it just wrote back from the device, the device is
sometimes sending gibberish interleaved with the right data.  It could be a
HW bug (for which a SW workaround might or not be possible, as what
ApiTrace tries to do is rarely done in practice by real apps), or SW bug
(like some internal device caches/settings need to be flushed).

That said the Cypress chips are relatively old.  I'm not sure how much time
r600 driver developers can afford to spend on this issue.   I've they often
ask users to make traces of bugs, so at very least they will want to be
aware of this issue.

Jose

On Mon, Nov 10, 2014 at 8:33 PM, Benjamin Bellec <b.bellec at gmail.com> wrote:

> I have tested with nouveau (on a GeForce GT210 (NVA8)) and everything is
> fine with it. No glitches while retracing.
> Here is an example trace if you want to compare :
>
> https://drive.google.com/file/d/0B7D2Y0QXFND2aHp0M0gzVE81dEk/view?usp=sharing
> (149 MB)
> md5sum 0988b7a222a923520180783e28be267a
>
> 2014-11-09 23:55 GMT+01:00 Benjamin Bellec <b.bellec at gmail.com>:
>
>> I tried to follow the procedure in the link you pointed, but I couldn't
>> make it works. So I just disabled the Steam Overlay as said, and continued
>> to catch the trace with my modified "Sam3" file, which should works after
>> all.
>>
>> Just disabling the overlay doesn't solve the glitches.
>> So I tested your 3 patches, unfortunately none of them has improved the
>> situation : as usual, sometimes there is no glitches at all but most of
>> times glitches appears while retracing.
>>
>> If you need them, here are some of the traces :
>> - trace with zlib patch, the glitches are a bit different than usual :
>> https://drive.google.com/file/d/0B7D2Y0QXFND2ZXp5SVR0QU1GV2M/view?usp=sharing
>> (174 MB) md5sum 1b109d36e7760968ad8ce04bc4d22fe9
>> - trace with glfinish patch :
>> https://drive.google.com/file/d/0B7D2Y0QXFND2M3N0VDY4QUlHNE0/view?usp=sharing
>> (158 MB) md5sum 8d4b9a7de7f1ce4fe02385259a952b25
>> - again a trace with glfinish patch, glitches are different from the
>> first one :
>> https://drive.google.com/file/d/0B7D2Y0QXFND2ZUNCTVNqM19BbUk/view?usp=sharing
>> (155 MB) md5sum 7bda946ce1cd21f8138e0724b7502219
>>
>> Tomorrow, I will test with a GeForce GT210 (nouveau).
>>
>> 2014-11-07 13:53 GMT+01:00 Benjamin Bellec <b.bellec at gmail.com>:
>>
>>> OK, I will redo my trace with this new procedure. It seems cleaner and
>>> safer than mine.
>>> But I will not be able to do this weekend.
>>>
>>> 2014-11-07 9:57 GMT+01:00 José Fonseca <jose.r.fonseca at gmail.com>:
>>>
>>>> Hi Benjamin,
>>>>
>>>> > ERROR: ld.so: object
>>>> '/home/benjamin/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from
>>>> LD_PRELOAD cannot be preloaded: ignored.
>>>>
>>>> It might be a good idea to disable Steam's game overlay, just to be
>>>> sure it's not interfering with apitrace, as described in
>>>> https://github.com/apitrace/apitrace/wiki/Steam#linux , the "
>>>> Otherwise, I think what you're doing should be fine.
>>>>
>>>> > apitrace: warning: _gl_param_size: unknown GLenum 0x87FC
>>>>
>>>> For these warnings I'll push a fix to apitrace shortly, but they are
>>>> harmless -- it won't affect the trace at all.
>>>>
>>>> Jose
>>>>
>>>>
>>>> On Thu, Nov 6, 2014 at 10:36 PM, Benjamin Bellec <b.bellec at gmail.com>
>>>> wrote:
>>>>
>>>>> Hi José,
>>>>>
>>>>> I have done quite intense testing of this evening, but I finally saw
>>>>> something quite odd. So before sharing anything I need to be sure that I'm
>>>>> not capturing the trace wrongly.
>>>>>
>>>>> First of all, Serious Sam 3 is a Steam game. It's a 32-bit game. I'm
>>>>> on a 64-bit machine.
>>>>>
>>>>> Here is how I build apitrace :
>>>>> $ git clone https://github.com/apitrace/apitrace.git
>>>>> $ cd apitrace
>>>>> $ cmake -H. -Bbuild -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_GUI=TRUE
>>>>> $ make -C build
>>>>> $ cmake \
>>>>>         -DCMAKE_C_FLAGS=-m32 \
>>>>>         -DCMAKE_CXX_FLAGS=-m32 \
>>>>>         -DCMAKE_EXE_LINKER_FLAGS=-m32 \
>>>>>         -DCMAKE_SYSTEM_LIBRARY_PATH=/usr/lib \
>>>>>         -DENABLE_GUI=FALSE \
>>>>>         -H. -Bbuild32
>>>>> $ make -C build32 glxtrace
>>>>>
>>>>> So I should now have a working apitrace in /home/benjamin/apitrace
>>>>>
>>>>> I launch steam :
>>>>> $ steam
>>>>> Running Steam on fedora 19 64-bit
>>>>> STEAM_RUNTIME is enabled automatically
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>>
>>>>> (steam:2986): Gtk-WARNING **: Impossible de trouver le moteur de thème
>>>>> dans module_path : « adwaita »
>>>>>
>>>>> (steam:2986): Gtk-WARNING **: Impossible de trouver le moteur de thème
>>>>> dans module_path : « adwaita »
>>>>> /usr/share/themes/Adwaita/gtk-2.0/gtkrc:1137: error: unexpected
>>>>> identifier `direction', expected character `}'
>>>>> Gtk-Message: Failed to load module "pk-gtk-module"
>>>>>
>>>>> (steamwebhelper:2990): Gtk-WARNING **: Impossible de trouver le moteur
>>>>> de thème dans module_path : « adwaita »
>>>>>
>>>>> (steamwebhelper:2990): Gtk-WARNING **: Impossible de trouver le moteur
>>>>> de thème dans module_path : « adwaita »
>>>>> /usr/share/themes/Adwaita/gtk-2.0/gtkrc:1137: error: unexpected
>>>>> identifier `direction', expected character `}'
>>>>> Gtk-Message: Failed to load module "pk-gtk-module"
>>>>> Installing breakpad exception handler for
>>>>> appid(steamwebhelper)/version(20141020140456)
>>>>> Installing breakpad exception handler for
>>>>> appid(steamwebhelper)/version(1413813896)
>>>>> [1106/231809:ERROR:nss_util.cc(1018)] Failed to load NSS libraries.
>>>>> Installing breakpad exception handler for
>>>>> appid(steamwebhelper)/version(20141020140456)
>>>>> Installing breakpad exception handler for
>>>>> appid(steamwebhelper)/version(1413813896)
>>>>> Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line
>>>>> 70: non-double matrix element
>>>>> Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line
>>>>> 70: non-double matrix element
>>>>> Fontconfig warning: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf",
>>>>> line 78: saw unknown, expected number
>>>>> Fontconfig warning: "/etc/fonts/conf.d/65-0-lohit-bengali.conf", line
>>>>> 32: unknown element "langset"
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Generating new string page texture 2: 48x256, total string texture
>>>>> memory is 49,15 KB
>>>>> Generating new string page texture 3: 256x256, total string texture
>>>>> memory is 311,30 KB
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Adding licenses for the following package(s): 0, 11, 34, 79, 516, 984,
>>>>> 2481, 12328, 14840, 16549, 17838, 20883, 21089, 25544, 27644, 29136, 31974,
>>>>> 31975, 49307, 53394, 53820
>>>>> roaming config store loaded successfully - 1484 bytes.
>>>>> migrating temporary roaming config store
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> ExecCommandLine:
>>>>> ""/home/benjamin/.local/share/Steam/ubuntu12_32/steam" "
>>>>> System startup time: 3,47 seconds
>>>>> [1106/231812:ERROR:renderer_main.cc(227)] Running without renderer
>>>>> sandbox
>>>>> Generating new string page texture 70: 1024x256, total string texture
>>>>> memory is 1,36 MB
>>>>> Generating new string page texture 71: 256x256, total string texture
>>>>> memory is 262,14 KB
>>>>> Generating new string page texture 72: 128x256, total string texture
>>>>> memory is 1,49 MB
>>>>> Running Steam on fedora 19 64-bit
>>>>> STEAM_RUNTIME has been set by the user to:
>>>>> /home/benjamin/.local/share/Steam/ubuntu12_32/steam-runtime
>>>>> Generating new string page texture 73: 32x256, total string texture
>>>>> memory is 1,52 MB
>>>>> ExecCommandLine: "/home/benjamin/.steam/root/ubuntu12_32/steam
>>>>> steam://open/driverhelperready"
>>>>> ExecSteamURL: "steam://open/driverhelperready"
>>>>> Generating new string page texture 78: 64x256, total string texture
>>>>> memory is 1,59 MB
>>>>> Generating new string page texture 79: 256x256, total string texture
>>>>> memory is 1,85 MB
>>>>> Generating new string page texture 80: 128x256, total string texture
>>>>> memory is 1,98 MB
>>>>> Generating new string page texture 81: 384x256, total string texture
>>>>> memory is 2,38 MB
>>>>> Installing breakpad exception handler for
>>>>> appid(steam)/version(1413917607)
>>>>> Generating new string page texture 91: 512x256, total string texture
>>>>> memory is 2,90 MB
>>>>>
>>>>>
>>>>> And in order to catch a trace of the game, I have modified the SS3
>>>>> executable. The executable is located in
>>>>> "/home/benjamin/.local/share/Steam/SteamApps/common/Serious Sam 3/Bin" and
>>>>> is named "Sam3"
>>>>>
>>>>> $ file "/home/benjamin/.local/share/Steam/SteamApps/common/Serious Sam
>>>>> 3/Bin/Sam3" gives :
>>>>> ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically
>>>>> linked (uses shared libs), for GNU/Linux 2.6.15,
>>>>> BuildID[sha1]=0xaedfd266c84ecec32e8ff6e69f3f1eb8a5f78d46, stripped
>>>>>
>>>>> So I moved the genuine exec :
>>>>> $ mv Sam3 Sam3.old
>>>>>
>>>>> And created a new "Sam3" shell script which is just :
>>>>> #!/bin/sh
>>>>> TRACE_FILE=/home/benjamin/testmesa/ss3_tmp.trace
>>>>> LD_PRELOAD=/home/benjamin/apitrace/build32/wrappers/glxtrace.so
>>>>> /home/benjamin/apitrace/build/apitrace trace --api gl ./Sam3.old
>>>>>
>>>>> So now I just launch SS3 within Steam and here is the log (that I
>>>>> didn't saw before) :
>>>>> Game update: AppID 41070 "Serious Sam 3: BFE", ProcID 3108, IP
>>>>> 0.0.0.0:0
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from
>>>>> LD_PRELOAD cannot be preloaded: ignored.
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from
>>>>> LD_PRELOAD cannot be preloaded: ignored.
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build/wrappers/glxtrace.so' from LD_PRELOAD cannot
>>>>> be preloaded: ignored.
>>>>> apitrace: loaded into
>>>>> /home/benjamin/.local/share/Steam/SteamApps/common/Serious Sam
>>>>> 3/Bin/Sam3.old
>>>>>
>>>>> (steam:2986): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child
>>>>> that doesn't believe we're it's parent.
>>>>>           [snip] same message several times [/snip]
>>>>> (steam:2986): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child
>>>>> that doesn't believe we're it's parent.
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/bash
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/getopt
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/basename
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/sed
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/sed
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/sed
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/sed
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/sed
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/tr
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/bash
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/cat
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/cat
>>>>> cat: /etc/debian_version: Aucun fichier ou dossier de ce type
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/bash
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/grep
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> apitrace: loaded into /usr/bin/cat
>>>>> Setting breakpad minidump AppID = 41070
>>>>> Steam_SetMinidumpSteamID:  Caching Steam ID:  76561197975475067 [API
>>>>> loaded no]
>>>>> WRN:  CPU Power saving is enabled and performance governor is not used.
>>>>> INF:  GameEnv API: Steam
>>>>> INF:  Encoded user ID = 28d03bc7:6f628ecf
>>>>> apitrace: redirecting dlopen("libGL.so.1", 0x101)
>>>>> apitrace: tracing to /home/benjamin/testmesa/ss3_tmp.trace
>>>>> apitrace: redirecting dlopen("libGL.so.1", 0x102)
>>>>> INF:
>>>>> INF:  * Desktop settings...
>>>>> INF:  Color depth: 32-bit
>>>>> INF:  Desktop resolution: 1680 x 1050
>>>>> INF:  Fullscreen on primary display
>>>>> apitrace: redirecting dlopen("libGL.so.1", 0x101)
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> lspci:
>>>>> /home/benjamin/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libpci.so.3:
>>>>> version `LIBPCI_3.2' not found (required by lspci)
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> lspci:
>>>>> /home/benjamin/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libpci.so.3:
>>>>> version `LIBPCI_3.2' not found (required by lspci)
>>>>> ERROR: ld.so: object
>>>>> '/home/benjamin/apitrace/build32/wrappers/glxtrace.so' from LD_PRELOAD
>>>>> cannot be preloaded: ignored.
>>>>> lspci:
>>>>> /home/benjamin/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libpci.so.3:
>>>>> version `LIBPCI_3.2' not found (required by lspci)
>>>>> WRN:  lspci: GPU vendor and/or device ID not detected!
>>>>> apitrace: warning: _gl_param_size: unknown GLenum 0x87FC
>>>>> apitrace: warning: _gl_param_size: unknown GLenum 0x87FC
>>>>> WRN:  [OpenGL] Unable to determine VRAM size... assuming 512 MB.
>>>>> apitrace: warning: _gl_param_size: unknown GLenum 0x87FC
>>>>> apitrace: warning: _gl_param_size: unknown GLenum 0x87FC
>>>>> WRN:  [OpenGL] "GL_ARB_get_program_binary" extension is present but
>>>>> not used because no binary formats are exposed.
>>>>> INF:
>>>>> INF:  Gfx API: OpenGL
>>>>> INF:  Resolution: 1680 x 1050
>>>>> INF:  Vendor: unknown (0x0000)
>>>>> INF:  Driver: X.Org (0x0000)
>>>>> INF:  Renderer: Gallium 0.4 on AMD CYPRESS
>>>>> INF:  Version: 3.0 Mesa 10.3.2
>>>>> INF:  Video memory size: 512 MB
>>>>> INF:  Available for textures: 512 MB
>>>>> INF:  Active GPU(s): 1
>>>>> INF:  Unable to check for correct version of display driver!
>>>>> INF:
>>>>> INF:  Sfx API: OpenAL
>>>>> INF:  Device: PulseAudio Default
>>>>> INF:  Mixer frequency: 44100 Hz
>>>>> INF:  Mixer voices: 64
>>>>> INF:  Max sound sources: 15
>>>>> INF:  Max total volume: 3
>>>>> INF:  Speaker config: (unknown)
>>>>> INF:  Environment FX: not supported
>>>>> INF:
>>>>> INF:  Using cheats will invalidate your score for this level and
>>>>> achievements won't be awarded for the remainder of the game.
>>>>> INF:  AutoDetect: Hardware values unchanged, nothing to do.
>>>>> INF:  Started simulation on
>>>>> 'Content/SeriousSam3/Levels/Menu/Intro.wld' in 0.54 seconds.
>>>>> INF:  Started simulation on
>>>>> 'Content/SeriousSam3/Levels/Menu/MenuLevel.wld' in 0.26 seconds.
>>>>> INF:  Started simulation on
>>>>> 'Content/SeriousSam3/Levels/Z5_Other/SV_Canyon.wld' in 5.47 seconds.
>>>>>
>>>>>
>>>>> I suspect something is wrong in the manner I'm capturing the trace.
>>>>>
>>>>>
>>>>> 2014-11-05 23:19 GMT+01:00 José Fonseca <jose.r.fonseca at gmail.com>:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Nov 5, 2014 at 6:22 PM, Benjamin Bellec <b.bellec at gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Yes I confirm that the weapons are *always* correctly rendered while
>>>>>>> tracing. The corruption only appears in the apitrace.
>>>>>>>
>>>>>>
>>>>>> Wow. This is one of the weirdest things i've seen.
>>>>>>
>>>>>>
>>>>>>> Anyway thanks for this explanation.
>>>>>>> So, do you think a hardware (physical) problem can be the origin of
>>>>>>> this ?
>>>>>>> Or more probably a software one ?
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Please do two more experiments:
>>>>>>
>>>>>> 1. Undo any previous changes to apitrace tree, apply the attached
>>>>>> patch zlib.patch and see if it helps.
>>>>>>
>>>>>>    This will force apitrace to compress with zlib instead of snappy,
>>>>>> so eliminate the chance that the bug is not on glMapBufferRange but inside
>>>>>> snappy somehow.
>>>>>>
>>>>>> 2. Ditto with pin-thread-on-cpu.patch.
>>>>>>
>>>>>>   If this is a problem due to stale CPU cache this might help.
>>>>>>
>>>>>> 3. Ditto with glfinish.patch
>>>>>>
>>>>>>    If GPU is the one scribbling over then this call should make the
>>>>>> issue either never happen or happen all the time.
>>>>>>
>>>>>> 4. try tracing the replay of the good ss3_correct_without_patch.trace
>>>>>> like
>>>>>>
>>>>>>   ./apitrace trace ./glretrace -b ss3_correct_without_patch.trace
>>>>>>
>>>>>> a few times, and check whether the replays are as good as
>>>>>> ss3_correct_without_patch.trace, or if they regress some times, like the
>>>>>> real app does.  This might help determine whether the ss3 application is
>>>>>> doing something special, or not.
>>>>>>
>>>>>> Because I was surprised, indeed, I have another problematic bug that
>>>>>>> occurs, aparently with glMapBufferRange() too, see BUGZILLA #77596
>>>>>>> <https://bugs.freedesktop.org/show_bug.cgi?id=77596>particularly my
>>>>>>> #7 comments. Maybe this is just coincidence. I'm not an OpenGL developper
>>>>>>> so I don't know where the glMapBufferRange's "lenght" parameter come from ?
>>>>>>> (from the game or from the OpenGL driver itself).
>>>>>>>
>>>>>>
>>>>>> It's hard to say whether it's related. glMapBufferRange's length
>>>>>> parameter is specified by the app, but the app could be computing that
>>>>>> value based on glGet* queries done to the OpenGL driver, and some times
>>>>>> there are bugs.
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> To sum up, what do you think I should do now ? Fill a bug against
>>>>>>> the OpenGL driver ?
>>>>>>>
>>>>>>>
>>>>>> Let's see if the above experiments help narrow this further.
>>>>>>
>>>>>>
>>>>>> I really hate when apitrace is not able to capture something properly
>>>>>> -- it's like most basic of basic functionality -- everything else (replay,
>>>>>> UI, state dumping) can be fixed improved after the fact, but if the trace
>>>>>> itself can't be trusted then that's showstopper.  So fingers crossed..
>>>>>>
>>>>>>
>>>>>> Jose
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/apitrace/attachments/20141110/f165129d/attachment-0001.html>


More information about the apitrace mailing list