[Mesa-dev] [PATCH 1/6] glx: Convert to automake.

Jose Fonseca jfonseca at vmware.com
Thu Mar 1 10:23:54 PST 2012



----- Original Message -----
> On Thu, Mar 1, 2012 at 5:28 PM, Eric Anholt <eric at anholt.net> wrote:
> > On Thu, 1 Mar 2012 16:50:40 +0100, Marek Olšák <maraeo at gmail.com>
> > wrote:
> >> Hi Eric,
> >>
> >> this commit breaks StarCraft II running on Wine traced by apitrace
> >> on r600g. Wine is most probably stuck in a deadlock. 

Does this only happens when tracing with apitrace?

If so, please try disabling the segfault handler:

$ git diff common/os_posix.cpp
diff --git a/common/os_posix.cpp b/common/os_posix.cpp
index 261fe88..a408e6d 100644
--- a/common/os_posix.cpp
+++ b/common/os_posix.cpp
@@ -242,6 +242,7 @@ signalHandler(int sig, siginfo_t *info, void *context)
 void
 setExceptionCallback(void (*callback)(void))
 {
+    return;
     assert(!gCallback);
     if (!gCallback) {
         gCallback = callback;


Jose

> >> It prints
> >> these
> >> error messages:
> >>
> >> err:seh:setup_exception_record stack overflow 2412 bytes in thread
> >> 0024 eip 00437fdb esp 00c409c4 stack 0xc40000-0xc41000-0xd40000
> >> err:ntdll:RtlpWaitForCriticalSection section 0x7dce41e0
> >> "x11drv_main.c: X11DRV_CritSection" wait timed out in thread 0025,
> >> blocked by 0024, retrying (60 sec)
> >> err:ntdll:RtlpWaitForCriticalSection section 0x72e200 "?" wait
> >> timed
> >> out in thread 0023, blocked by 0024, retrying (60 sec)
> >> err:ntdll:RtlpWaitForCriticalSection section 0x72e200 "?" wait
> >> timed
> >> out in thread 0009, blocked by 0024, retrying (60 sec)
> >> etc.
> >>
> >> Reverting this commit (and also the egl automake commits to avoid
> >> conflicts) fixes the issue.
> >>
> >> Do you have any idea about what might have gone wrong?
> >
> > Hmm, weird.  Defines were my first idea, the diff of all defines
> > used in
> > the compile is:
> >
> >  -DGLX_DIRECT_RENDERING
> >  -DGLX_INDIRECT_RENDERING
> >  -DGLX_SHARED_GLAPI
> >  -DGLX_USE_TLS
> >  -D_GNU_SOURCE
> >  -DHAVE_ALIAS
> > +-DHAVE_DLFCN_H=1
> > +-DHAVE_INTTYPES_H=1
> > +-DHAVE_LIBEXPAT=1
> >  -DHAVE_LIBUDEV
> > +-DHAVE_LIBXCB_DRI2=1
> > +-DHAVE_MEMORY_H=1
> >  -DHAVE_MINCORE
> >  -DHAVE_POSIX_MEMALIGN
> > +-DHAVE_STDINT_H=1
> > +-DHAVE_STDLIB_H=1
> > +-DHAVE_STRING_H=1
> > +-DHAVE_STRINGS_H=1
> > +-DHAVE_SYS_STAT_H=1
> > +-DHAVE_SYS_TYPES_H=1
> > +-DHAVE_UNISTD_H=1
> >  -DHAVE_XCB_DRI2
> >  -DHAVE_XCB_GLX_CREATE_CONTEXT
> >  -DIN_DRI_DRIVER
> > -directory
> > --DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
> > --DMAPI_MODE_BRIDGE
> > +directory.
> > +-DLT_OBJDIR=\".libs/\"
> > +-DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi\?product=Mesa\"
> > +"-DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\""
> > +-DPACKAGE=\"mesa\"
> > +-DPACKAGE_NAME=\"Mesa\"
> > +-DPACKAGE_STRING=\"Mesa\
> > +"-DPACKAGE_STRING=\"Mesa
> > +-DPACKAGE_TARNAME=\"mesa\"
> > +-DPACKAGE_URL=\"\"
> > +-DPACKAGE_VERSION=\"8.0.0\"
> > +-DPIC
> >
> > The MAPI ones are a bit concerning, but the consumer of ABI_HEADER
> > #errors if it's not defined, and defining MAPI_MODE_BRIDGE doesn't
> > change the resulting libGL.so here.  The extra HAVE_* defines
> > shouldn't
> > do anything.
> >
> > Could you stick a debugger on it and see where it's stopped, at
> > least?
> 
> Sorry, I haven't been able to obtain a useful backtrace from wine. I
> have no idea how to debug this.
> 
> Marek
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 


More information about the mesa-dev mailing list