Re: [linux-audio-user] libfst: was: Steinberg The Grand

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-user] libfst: was: Steinberg The Grand
From: torbenh_AT_gmx.de
Date: Fri Jun 04 2004 - 15:18:46 EEST


On Fri, Jun 04, 2004 at 10:16:53AM +0200, Werner Schweer wrote:
> On Thursday 03 June 2004 20:52, torbenh_AT_gmx.de wrote:
> > On Thu, Jun 03, 2004 at 08:20:03PM +0200, Werner Schweer wrote:
> > > On Thursday 03 June 2004 19:33, Mark Knecht wrote:
> > > > torbenh_AT_gmx.de wrote:
> > >
> > > my changed libwinelib.c looks like this:
> > >
> > > int
> > > SharedWineInit (void (*sighandler)(int,siginfo_t*,void*))
> > > {
> > > unsigned char Error[2024]="";
> > > char *WineArguments[] = {"sharedapp", LIBPATH "/libfst.so", NULL};
> > > void* stackbase;
> > > size_t stacksize;
> > > void *ntdll;
> > > void *ntso;
> > > char ntdllpath[PATH_MAX+1];
> > > char* dlerr;
> > > char* env[] = { NULL };
> > >
> > > sharedwine_signal_handler = sighandler;
> > >
> > > if (setjmp (jump) == 0) {
> > > wine_init (2, WineArguments, env, Error, sizeof (Error));
> > > ...
> >
> > which wine version are you using ?
> > i really dont know where this env parameter comes from.
> > we have copied some code out of wine and libfst uses this.
> > (its the threading code from wine)
> >
> > if this code is expected to behave differently than it does
> > your pretty much doomed.
>
> its from cvs, last updated yesterday (03.06.2004).

hmm... ok... then we will need to adapt libfst to the new wine_init call,
to be prepared for the next release.

do you already know what #if i need ?

>
> >
> > please get your wine from www.winehq.org
>
> i tried again with wine-20040505. Calling fstconfig produces a core
> dump. Gdb says:
>
> (gdb) bt
> #0 __pthread_sighandler (signo=11, ctx=
> {gs = 0, __gsh = 0, fs = 51, __fsh = 0, es = 123, __esh = 0, ds = 123,
> __dsh = 0, edi = 131120, esi = 0, ebp = 1080816716, esp = 1080816708, ebx =
> 1075170628, edx = 0, ecx = 1, eax = 1082129376, trapno = 14, err = 4, eip =
> 1075232782, cs = 115, __csh = 0, eflags = 2163206, esp_at_signal =
> 1080816708, ss = 123, __ssh = 0, fpstate = 0x0, oldmask = 2147483648, cr2 =
> 1082129788})
> at sighandler.c:28
> #1 <signal handler called>
> #2 0x4016c00e in __pthread_internal_tsd_get (key=1077936127) at
> specific.c:225
> #3 0x400a434e in __libc_calloc (n=1, elem_size=1077936127) at malloc.c:3585
> #4 0x400d7813 in __opendir (name=0x20000 <Address 0x20000 out of bounds>)
> at ../sysdeps/unix/opendir.c:146
> #5 0x40315820 in wine_nt_to_unix_file_name (nameW=0x406bfb58,
> unix_name_ret=0x406bfb50, disposition=1, check_case=0 '\0')
> at directory.c:873
> #6 0x403164e0 in RtlDoesFileExists_U (file_name=0x40380750)
> at directory.c:1215
> #7 0x40328273 in RtlDosSearchPath_U (paths=0x40380510, search=0x406bfe08,
> ext=0x0, buffer_size=64, buffer=0x406bfd2c, file_part=0x406bfc68)
> at path.c:428
> #8 0x40320e29 in load_dll (load_path=0x40380510, libname=0x406bfe08, flags=0,
> pwm=0x406bfe00) at loader.c:1359
> #9 0x40320093 in fixup_imports (wm=0x403806c8, load_path=0x40380510)
> at loader.c:384
> #10 0x40322262 in LdrInitializeThunk (main_file=0x0, unknown2=0, unknown3=0,
> unknown4=0) at loader.c:1930
> #11 0x4051296b in start_process (arg=0x0) at process.c:822
>
> its essential the same as in the current wine cvs version.
> My system uses glibc 2.3.2, linux 2.6.7-rc1 (no nptl).

pthread_self() is broken in your case.
i have seen this behaviour in a signal handler with an alternate stack.
my pthread_implementation does not use thread local storage and
therefore pthread_self uses the stack to identify the thread.

newer glibc should be using %gs for this stuff.
but your %gs register is 0.

very strange.
can you check what the registers contain using breakpoints ?

gdb> info registers

it would be nice if you can find out with what options your glibc is
configured with.

this must be a glibc issue because its working for marek, who uses the
same glibc i do.

>
> /werner
>
>

-- 
torben Hohn
http://galan.sourceforge.net -- The graphical Audio language


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Fri Jun 04 2004 - 15:09:08 EEST