Bug 77358

Summary: [BISECTED] egl_pipe.c:154:36: error: dereferencing pointer to incomplete type since 3b0b44f7def0acb4f7a7aef086c0bece321418a6
Product: Mesa Reporter: Alexandre Demers <alexandre.f.demers>
Component: Drivers/Gallium/r600Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED DUPLICATE QA Contact:
Severity: normal    
Priority: medium CC: maraeo
Version: git   
Hardware: All   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Alexandre Demers 2014-04-12 05:00:04 UTC
First bad commit is 3b0b44f7def0acb4f7a7aef086c0bece321418a6:

winsys/radeon: fix a race condition in initialization of radeon_winsys::screen
Author: Marek Olšák<marek.olsak@amd.com>
Author date: 4/8/14 7:07 PM
Parent: winsys/radeon: fix a race condition between winsys_create...
Child: configure.ac: require libdrm_radeon 2.4.53
Branch: master (glsl: Ignore loop-too-large heuristic if there's bad vari...) 
Branch: origin/master (glsl: Ignore loop-too-large heuristic if there's bad vari...) 
Follows: snb-magic (graw: Add struct pipe_surface forward declaration.)

    winsys/radeon: fix a race condition in initialization of radeon_winsys::screen
    
    Create the screen in the winsys while the mutex is locked.
    This also results in a nice code cleanup!
    
    Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>

---
Error output:

Making all in egl-static
make[3]: Entering directory '/home/dema1701/projects/display/mesa/src/gallium/targets/egl-static'
  CC       egl_pipe.lo
egl_pipe.c: In function 'pipe_r600_create_screen':
egl_pipe.c:153:4: error: implicit declaration of function 'radeon_drm_winsys_create' [-Werror=implicit-function-declaration]
    rw = radeon_drm_winsys_create(fd, r600_screen_create);
    ^
egl_pipe.c:153:7: warning: assignment makes pointer from integer without a cast [enabled by default]
    rw = radeon_drm_winsys_create(fd, r600_screen_create);
       ^
egl_pipe.c:154:36: error: dereferencing pointer to incomplete type
    return rw ? debug_screen_wrap(rw->screen) : NULL;
                                    ^
egl_pipe.c:158:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
cc1: some warnings being treated as errors
Makefile:946: recipe for target 'egl_pipe.lo' failed
make[3]: *** [egl_pipe.lo] Error 1
make[3]: Leaving directory '/home/dema1701/projects/display/mesa/src/gallium/targets/egl-static'
Makefile:540: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/dema1701/projects/display/mesa/src/gallium/targets'
Makefile:528: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/dema1701/projects/display/mesa/src'
Makefile:577: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Comment 1 Laurent carlier 2014-04-12 06:04:42 UTC

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

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.