[Mesa-dev] [Bug 97140] dd_draw.c:949:11: error: implicit declaration of function 'fmemopen' is invalid in C99 [-Werror, -Wimplicit-function-declaration]

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Jul 29 23:13:58 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=97140

            Bug ID: 97140
           Summary: dd_draw.c:949:11: error: implicit declaration of
                    function 'fmemopen' is invalid in C99
                    [-Werror,-Wimplicit-function-declaration]
           Product: Mesa
           Version: unspecified
          Hardware: x86-64 (AMD64)
                OS: Mac OS X (All)
            Status: NEW
          Keywords: bisected, regression
          Severity: normal
          Priority: medium
         Component: Mesa core
          Assignee: mesa-dev at lists.freedesktop.org
          Reporter: vlee at freedesktop.org
        QA Contact: mesa-dev at lists.freedesktop.org
                CC: maraeo at gmail.com, nhaehnle at gmail.com

mesa: ebdc82d06532f992aea592265c29a11330e698fa (master 12.1.0-devel)

  CC       dd_draw.lo
dd_draw.c:949:11: error: implicit declaration of function 'fmemopen' is invalid
in C99 [-Werror,-Wimplicit-function-declaration]
      f = fmemopen(buf, dctx->max_log_buffer_size, "a");
          ^
dd_draw.c:949:11: note: did you mean 'freopen'?
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/stdio.h:248:7:
note: 'freopen'
      declared here
FILE    *freopen(const char * __restrict, const char * __restrict,
         ^
dd_draw.c:949:9: warning: incompatible integer to pointer conversion assigning
to 'FILE *' (aka 'struct __sFILE *') from 'int' [-Wint-conversion]
      f = fmemopen(buf, dctx->max_log_buffer_size, "a");
        ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


commit b47727a83ad6b5386f27b2c174a5c0f110a61038
Author: Marek Olšák <marek.olsak at amd.com>
Date:   Tue Jul 19 18:28:24 2016 +0200

    ddebug: implement pipelined hang detection mode

    For good performance while being able to generate decent hang reports.
    The report doesn't contain the parsed IB and the buffer list, but it
    isolates the draw call and dumps shaders while not having to flush
    the context.

    This is for GPU hangs that are harder to reproduce and require interactive
    playing for minutes or even hours.

    dd_pipe.h explains some implementation details. Initializing, copying
    (recording) and clearing states is most of the code.

    The performance should be at least 50% of the normal performance depending
    on the circumstances. (i.e. 50% is expected to be the worst case scenario,
    not the best case) The majority of time is spent in
    dump_debug_state(PIPE_DUMP_CURRENT_SHADERS) and that's after all
    the optimizations in later patches. There is no obvious way to optimize
    that further.

    Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160729/5f0d0646/attachment.html>


More information about the mesa-dev mailing list