Some textures are not rendering correctly in apitrace
Benjamin Bellec
b.bellec at gmail.com
Mon Nov 10 14:15:41 PST 2014
Thanks again José for your time and advice.
For reference, I filled a bug :
https://bugs.freedesktop.org/show_bug.cgi?id=86130
Regards.
2014-11-10 22:19 GMT+01:00 José Fonseca <jose.r.fonseca at gmail.com>:
> 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/babad2a1/attachment-0001.html>
More information about the apitrace
mailing list