Re: wine-0.9.37, ntdll.so loading fails, gdb output included

2007-05-25 Thread Vortechz

Sorry about the delay (I'm sending this reply ASAP)

I have no real port yet, but I can provide two patches and a script which
should help
you build wine-0.9.37. Any issues with the configure should be related to
missing libraries
(install the proper packages to resolve that).

Note:
To me it seems that the inlined _dl_strlcpy in ld.so is part of the problem.
I don't understand
the inner workings of ld.so, and the inlined code makes it difficult to
debug (reading regs and guessing...?).

I'm still not sure if the $ORIGIN linker symbol (may be linux-specific ld.so
symbol?) is a problem, 
or if it is supposed to work on OpenBSD 4.1.

The dnsapi of wine  http://www.nabble.com/file/p10803006/patch.configure.ac
patch.configure.ac  http://www.nabble.com/file/p10803006/patch.dlls_Makefile
patch.dlls_Makefile 
http://www.nabble.com/file/p10803006/rustybuildscript.sh rustybuildscript.sh
does not build, hence a patch which simply disables building of dnsapi. If
we get
wine running, the dnsapi gets higher priority of course.


Good luck!


Kurt Miller-4 wrote:
 
 Please email the list the updated port so that people who
 may be interested in helping you can reproduce the problem. 
 
 On Saturday 19 May 2007 2:32:19 pm Vortechz wrote:
 
 Jacob probably recognizes this:
 
 
 Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe
 
 Program received signal SIGSEGV, Segmentation fault.
 [Switching to process 31915, thread 0x8891a000]
 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
 #1  0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so
 #2  0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so
 #3  0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
 #4  0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so
 #5  0x06a4c66d in dlopen () from /usr/libexec/ld.so
 #6  0x0a667d54 in wine_dlopen (
 filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so,
 flag=2, 
 error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703
 #7  0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, 
 error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655
 #8  0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111
 
 
 * Now, I want to know more about what ld.so is doing:
 
 
 (gdb) symbol /usr/libexec/ld.so
 Load new symbol table from /usr/libexec/ld.so? (y or n) y
 Reading symbols from /usr/libexec/ld.so...done.
 (gdb) run /emul/w/windows/sol.exe
 The program being debugged has been started already.
 Start it from the beginning? (y or n) y
 
 Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe
 
 Program received signal SIGSEGV, Segmentation fault.
 [Switching to process 17606, thread 0x7f924000]
 0x084f9bec in ?? () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x084f9bec in ?? () from /usr/libexec/ld.so
 #1  0x284f718c in ?? () from /usr/libexec/ld.so
 #2  0x0008 in ?? ()
 #3  0xcfbf5ee8 in ?? ()
 #4  0x084fa50a in ?? () from /usr/libexec/ld.so
 #5  0x4000 in dladdr ()
 Cannot access memory at address 0x3fc8
 
 * 0x3fc8 seem to be constant and appears at every try
 
 * Next...I compiled ld.so and loaded symbols from ld.so and util.o
 in /usr/src/libexec/ld.so/ (stupid move?) to get this:
 
 [Switching to process 31541, thread 0x831a3000]
 0x04468bec in _dl_malloc () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x04468bec in _dl_malloc () from /usr/libexec/ld.so
 #1  0x0446950a in _dl_opendir () from /usr/libexec/ld.so
 #2  0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so
 #3  0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
 #4  0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so
 #5  0x0446766d in dlopen () from /usr/libexec/ld.so
 #6  0x0d731d54 in wine_dlopen (
 filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so,
 flag=2, 
 error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703
 #7  0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, 
 error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655
 #8  0x1c000f92 in ?? ()
 #9  0x0002 in __stack_smash_handler ()
 #10 0xcfbd54f0 in ?? ()
 #11 0xcfbd5074 in ?? ()
 #12 0x0400 in ?? ()
 #13 0x3c00 in ?? ()
 #14 0x0020 in __stack_smash_handler ()
 #15 0x0030 in _dl_strdup ()
 Cannot access memory at address 0x20
 
 * I'm lost here.!
 
 * util.c has a stack protector dummy...
 
 void __stack_smash_handler(char [], int);
 
 void
 __stack_smash_handler(char func[], int damaged)
 {
 _dl_exit(127);
 }
 
 * _dl_exit is essentially (an asm wrapper for syscall)  _exit(127)
 
 * I don't know what to do now...except screaming for HLP.
 
 
 Jacob Meuser-2 wrote:
  
  On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote:
  wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi
  
  Execution leads to segfault.
  (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I 
  have not forgot sysctl machdep.userldt=1)
  
  I know there are some issues about wine's use of
  

Re: wine-0.9.37, ntdll.so loading fails, gdb output included

2007-05-24 Thread Sam Fourman Jr.

On 5/19/07, Sam Fourman Jr. [EMAIL PROTECTED] wrote:

I would be interested in helping with this port

Sam Fourman Jr.

On 5/19/07, Kurt Miller [EMAIL PROTECTED] wrote:
 Please email the list the updated port so that people who
 may be interested in helping you can reproduce the problem.

 On Saturday 19 May 2007 2:32:19 pm Vortechz wrote:
 
  Jacob probably recognizes this:
 
 
  Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe
 
  Program received signal SIGSEGV, Segmentation fault.
  [Switching to process 31915, thread 0x8891a000]
  0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
  (gdb) bt
  #0  0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
  #1  0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so
  #2  0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so
  #3  0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
  #4  0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so
  #5  0x06a4c66d in dlopen () from /usr/libexec/ld.so
  #6  0x0a667d54 in wine_dlopen (
  filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2,
  error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703
  #7  0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0,
  error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655
  #8  0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111
 
 
  * Now, I want to know more about what ld.so is doing:
 
 
  (gdb) symbol /usr/libexec/ld.so
  Load new symbol table from /usr/libexec/ld.so? (y or n) y
  Reading symbols from /usr/libexec/ld.so...done.
  (gdb) run /emul/w/windows/sol.exe
  The program being debugged has been started already.
  Start it from the beginning? (y or n) y
 
  Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe
 
  Program received signal SIGSEGV, Segmentation fault.
  [Switching to process 17606, thread 0x7f924000]
  0x084f9bec in ?? () from /usr/libexec/ld.so
  (gdb) bt
  #0  0x084f9bec in ?? () from /usr/libexec/ld.so
  #1  0x284f718c in ?? () from /usr/libexec/ld.so
  #2  0x0008 in ?? ()
  #3  0xcfbf5ee8 in ?? ()
  #4  0x084fa50a in ?? () from /usr/libexec/ld.so
  #5  0x4000 in dladdr ()
  Cannot access memory at address 0x3fc8
 
  * 0x3fc8 seem to be constant and appears at every try
 
  * Next...I compiled ld.so and loaded symbols from ld.so and util.o
  in /usr/src/libexec/ld.so/ (stupid move?) to get this:
 
  [Switching to process 31541, thread 0x831a3000]
  0x04468bec in _dl_malloc () from /usr/libexec/ld.so
  (gdb) bt
  #0  0x04468bec in _dl_malloc () from /usr/libexec/ld.so
  #1  0x0446950a in _dl_opendir () from /usr/libexec/ld.so
  #2  0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so
  #3  0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
  #4  0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so
  #5  0x0446766d in dlopen () from /usr/libexec/ld.so
  #6  0x0d731d54 in wine_dlopen (
  filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2,
  error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703
  #7  0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020,
  error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655
  #8  0x1c000f92 in ?? ()
  #9  0x0002 in __stack_smash_handler ()
  #10 0xcfbd54f0 in ?? ()
  #11 0xcfbd5074 in ?? ()
  #12 0x0400 in ?? ()
  #13 0x3c00 in ?? ()
  #14 0x0020 in __stack_smash_handler ()
  #15 0x0030 in _dl_strdup ()
  Cannot access memory at address 0x20
 
  * I'm lost here.!
 
  * util.c has a stack protector dummy...
 
  void __stack_smash_handler(char [], int);
 
  void
  __stack_smash_handler(char func[], int damaged)
  {
  _dl_exit(127);
  }
 
  * _dl_exit is essentially (an asm wrapper for syscall)  _exit(127)
 
  * I don't know what to do now...except screaming for HLP.
 
 
  Jacob Meuser-2 wrote:
  
   On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote:
   wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi
  
   Execution leads to segfault.
   (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I
   have not forgot sysctl machdep.userldt=1)
  
   I know there are some issues about wine's use of
   kernel threads on OpenBSD. I am clueless about the
   true
   problem though. If possible, I would like
   some comments on the ktrace kdump.
  
   looks familiar.
  
   before you even get to problems with threads, you have problems
   with wine wanting to control where things are located.
  
   I've got a port of 0.9.10 that gets a little farther than
   what you got here.  loads libwine and libc, but cannot load
   ntdll.dll.so.
  
   try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no'
   in your environment before running configure and see if that
   gets you any farther.
  
   definitely not a trivial port.
  
  
   // V.A.
  
  
25268 ktrace   RET   ktrace 0
25268 ktrace   CALL
   execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
25268 ktrace   NAMI  /bin/wine
25268 ktrace   RET   

Re: wine-0.9.37, ntdll.so loading fails, gdb output included

2007-05-19 Thread Vortechz

Jacob probably recognizes this:


Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe

Program received signal SIGSEGV, Segmentation fault.
[Switching to process 31915, thread 0x8891a000]
0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
(gdb) bt
#0  0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
#1  0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so
#2  0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so
#3  0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
#4  0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so
#5  0x06a4c66d in dlopen () from /usr/libexec/ld.so
#6  0x0a667d54 in wine_dlopen (
filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, 
error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703
#7  0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, 
error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655
#8  0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111


* Now, I want to know more about what ld.so is doing:


(gdb) symbol /usr/libexec/ld.so
Load new symbol table from /usr/libexec/ld.so? (y or n) y
Reading symbols from /usr/libexec/ld.so...done.
(gdb) run /emul/w/windows/sol.exe
The program being debugged has been started already.
Start it from the beginning? (y or n) y

Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe

Program received signal SIGSEGV, Segmentation fault.
[Switching to process 17606, thread 0x7f924000]
0x084f9bec in ?? () from /usr/libexec/ld.so
(gdb) bt
#0  0x084f9bec in ?? () from /usr/libexec/ld.so
#1  0x284f718c in ?? () from /usr/libexec/ld.so
#2  0x0008 in ?? ()
#3  0xcfbf5ee8 in ?? ()
#4  0x084fa50a in ?? () from /usr/libexec/ld.so
#5  0x4000 in dladdr ()
Cannot access memory at address 0x3fc8

* 0x3fc8 seem to be constant and appears at every try

* Next...I compiled ld.so and loaded symbols from ld.so and util.o
in /usr/src/libexec/ld.so/ (stupid move?) to get this:

[Switching to process 31541, thread 0x831a3000]
0x04468bec in _dl_malloc () from /usr/libexec/ld.so
(gdb) bt
#0  0x04468bec in _dl_malloc () from /usr/libexec/ld.so
#1  0x0446950a in _dl_opendir () from /usr/libexec/ld.so
#2  0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so
#3  0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
#4  0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so
#5  0x0446766d in dlopen () from /usr/libexec/ld.so
#6  0x0d731d54 in wine_dlopen (
filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, 
error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703
#7  0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, 
error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655
#8  0x1c000f92 in ?? ()
#9  0x0002 in __stack_smash_handler ()
#10 0xcfbd54f0 in ?? ()
#11 0xcfbd5074 in ?? ()
#12 0x0400 in ?? ()
#13 0x3c00 in ?? ()
#14 0x0020 in __stack_smash_handler ()
#15 0x0030 in _dl_strdup ()
Cannot access memory at address 0x20

* I'm lost here.!

* util.c has a stack protector dummy...

void __stack_smash_handler(char [], int);

void
__stack_smash_handler(char func[], int damaged)
{
_dl_exit(127);
}

* _dl_exit is essentially (an asm wrapper for syscall)  _exit(127)

* I don't know what to do now...except screaming for HLP.


Jacob Meuser-2 wrote:
 
 On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote:
 wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi
 
 Execution leads to segfault.
 (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I 
 have not forgot sysctl machdep.userldt=1)
 
 I know there are some issues about wine's use of
 kernel threads on OpenBSD. I am clueless about the
 true
 problem though. If possible, I would like 
 some comments on the ktrace kdump.
 
 looks familiar.
 
 before you even get to problems with threads, you have problems
 with wine wanting to control where things are located.
 
 I've got a port of 0.9.10 that gets a little farther than
 what you got here.  loads libwine and libc, but cannot load
 ntdll.dll.so.
 
 try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no'
 in your environment before running configure and see if that
 gets you any farther.
 
 definitely not a trivial port.
 
 
 // V.A. 
 
 
  25268 ktrace   RET   ktrace 0
  25268 ktrace   CALL 
 execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
  25268 ktrace   NAMI  /bin/wine
  25268 ktrace   RET   execve -1 errno 2 No such file
 or directory
  25268 ktrace   CALL 
 execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
  25268 ktrace   NAMI  /sbin/wine
  25268 ktrace   RET   execve -1 errno 2 No such file
 or directory
  25268 ktrace   CALL 
 execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
  25268 ktrace   NAMI  /usr/bin/wine
  25268 ktrace   RET   execve -1 errno 2 No such file
 or directory
  25268 ktrace   CALL 
 execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
  25268 ktrace   NAMI  /usr/sbin/wine
  25268 ktrace   RET   execve -1 errno 2 No such file
 or directory
  25268 ktrace   

Re: wine-0.9.37, ntdll.so loading fails, gdb output included

2007-05-19 Thread Robert Nagy

If i remember correctly, wine uses $ORIGIN to load shared
objects, but maybe i am wrong.

Search for something like -Wl,-rpath,\''$$ORIGIN'\' and remove
that, like we did for OpenOffice.



Re: wine-0.9.37, ntdll.so loading fails, gdb output included

2007-05-19 Thread Kurt Miller
Please email the list the updated port so that people who
may be interested in helping you can reproduce the problem. 

On Saturday 19 May 2007 2:32:19 pm Vortechz wrote:
 
 Jacob probably recognizes this:
 
 
 Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe
 
 Program received signal SIGSEGV, Segmentation fault.
 [Switching to process 31915, thread 0x8891a000]
 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
 #1  0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so
 #2  0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so
 #3  0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
 #4  0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so
 #5  0x06a4c66d in dlopen () from /usr/libexec/ld.so
 #6  0x0a667d54 in wine_dlopen (
 filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, 
 error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703
 #7  0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0, 
 error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655
 #8  0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111
 
 
 * Now, I want to know more about what ld.so is doing:
 
 
 (gdb) symbol /usr/libexec/ld.so
 Load new symbol table from /usr/libexec/ld.so? (y or n) y
 Reading symbols from /usr/libexec/ld.so...done.
 (gdb) run /emul/w/windows/sol.exe
 The program being debugged has been started already.
 Start it from the beginning? (y or n) y
 
 Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe
 
 Program received signal SIGSEGV, Segmentation fault.
 [Switching to process 17606, thread 0x7f924000]
 0x084f9bec in ?? () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x084f9bec in ?? () from /usr/libexec/ld.so
 #1  0x284f718c in ?? () from /usr/libexec/ld.so
 #2  0x0008 in ?? ()
 #3  0xcfbf5ee8 in ?? ()
 #4  0x084fa50a in ?? () from /usr/libexec/ld.so
 #5  0x4000 in dladdr ()
 Cannot access memory at address 0x3fc8
 
 * 0x3fc8 seem to be constant and appears at every try
 
 * Next...I compiled ld.so and loaded symbols from ld.so and util.o
 in /usr/src/libexec/ld.so/ (stupid move?) to get this:
 
 [Switching to process 31541, thread 0x831a3000]
 0x04468bec in _dl_malloc () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x04468bec in _dl_malloc () from /usr/libexec/ld.so
 #1  0x0446950a in _dl_opendir () from /usr/libexec/ld.so
 #2  0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so
 #3  0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
 #4  0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so
 #5  0x0446766d in dlopen () from /usr/libexec/ld.so
 #6  0x0d731d54 in wine_dlopen (
 filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2, 
 error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703
 #7  0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020, 
 error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655
 #8  0x1c000f92 in ?? ()
 #9  0x0002 in __stack_smash_handler ()
 #10 0xcfbd54f0 in ?? ()
 #11 0xcfbd5074 in ?? ()
 #12 0x0400 in ?? ()
 #13 0x3c00 in ?? ()
 #14 0x0020 in __stack_smash_handler ()
 #15 0x0030 in _dl_strdup ()
 Cannot access memory at address 0x20
 
 * I'm lost here.!
 
 * util.c has a stack protector dummy...
 
 void __stack_smash_handler(char [], int);
 
 void
 __stack_smash_handler(char func[], int damaged)
 {
 _dl_exit(127);
 }
 
 * _dl_exit is essentially (an asm wrapper for syscall)  _exit(127)
 
 * I don't know what to do now...except screaming for HLP.
 
 
 Jacob Meuser-2 wrote:
  
  On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote:
  wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi
  
  Execution leads to segfault.
  (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I 
  have not forgot sysctl machdep.userldt=1)
  
  I know there are some issues about wine's use of
  kernel threads on OpenBSD. I am clueless about the
  true
  problem though. If possible, I would like 
  some comments on the ktrace kdump.
  
  looks familiar.
  
  before you even get to problems with threads, you have problems
  with wine wanting to control where things are located.
  
  I've got a port of 0.9.10 that gets a little farther than
  what you got here.  loads libwine and libc, but cannot load
  ntdll.dll.so.
  
  try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no'
  in your environment before running configure and see if that
  gets you any farther.
  
  definitely not a trivial port.
  
  
  // V.A. 
  
  
   25268 ktrace   RET   ktrace 0
   25268 ktrace   CALL 
  execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
   25268 ktrace   NAMI  /bin/wine
   25268 ktrace   RET   execve -1 errno 2 No such file
  or directory
   25268 ktrace   CALL 
  execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
   25268 ktrace   NAMI  /sbin/wine
   25268 ktrace   RET   execve -1 errno 2 No such file
  or directory
   25268 ktrace   CALL 
  

Re: wine-0.9.37, ntdll.so loading fails, gdb output included

2007-05-19 Thread Sam Fourman Jr.

I would be interested in helping with this port

Sam Fourman Jr.

On 5/19/07, Kurt Miller [EMAIL PROTECTED] wrote:

Please email the list the updated port so that people who
may be interested in helping you can reproduce the problem.

On Saturday 19 May 2007 2:32:19 pm Vortechz wrote:

 Jacob probably recognizes this:


 Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe

 Program received signal SIGSEGV, Segmentation fault.
 [Switching to process 31915, thread 0x8891a000]
 0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x06a4dbec in _dl_malloc () from /usr/libexec/ld.so
 #1  0x06a4e50a in _dl_opendir () from /usr/libexec/ld.so
 #2  0x06a4e938 in _dl_find_shlib () from /usr/libexec/ld.so
 #3  0x06a4ebe3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
 #4  0x06a4ee5c in _dl_load_shlib () from /usr/libexec/ld.so
 #5  0x06a4c66d in dlopen () from /usr/libexec/ld.so
 #6  0x0a667d54 in wine_dlopen (
 filename=0x7d4d014a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2,
 error=0xcfbcaff0 \020°¼Ï, errorsize=1024) at loader.c:703
 #7  0x0a667cb6 in wine_init (argc=16392, argv=0xcfbcafa0,
 error=0xcfbcaff0 \020°¼Ï, error_size=1024) at loader.c:655
 #8  0x1c000f92 in main (argc=2, argv=0xcfbcb46c) at main.c:111


 * Now, I want to know more about what ld.so is doing:


 (gdb) symbol /usr/libexec/ld.so
 Load new symbol table from /usr/libexec/ld.so? (y or n) y
 Reading symbols from /usr/libexec/ld.so...done.
 (gdb) run /emul/w/windows/sol.exe
 The program being debugged has been started already.
 Start it from the beginning? (y or n) y

 Starting program: /usr/local/bin/wine /emul/w/windows/sol.exe

 Program received signal SIGSEGV, Segmentation fault.
 [Switching to process 17606, thread 0x7f924000]
 0x084f9bec in ?? () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x084f9bec in ?? () from /usr/libexec/ld.so
 #1  0x284f718c in ?? () from /usr/libexec/ld.so
 #2  0x0008 in ?? ()
 #3  0xcfbf5ee8 in ?? ()
 #4  0x084fa50a in ?? () from /usr/libexec/ld.so
 #5  0x4000 in dladdr ()
 Cannot access memory at address 0x3fc8

 * 0x3fc8 seem to be constant and appears at every try

 * Next...I compiled ld.so and loaded symbols from ld.so and util.o
 in /usr/src/libexec/ld.so/ (stupid move?) to get this:

 [Switching to process 31541, thread 0x831a3000]
 0x04468bec in _dl_malloc () from /usr/libexec/ld.so
 (gdb) bt
 #0  0x04468bec in _dl_malloc () from /usr/libexec/ld.so
 #1  0x0446950a in _dl_opendir () from /usr/libexec/ld.so
 #2  0x04469938 in _dl_find_shlib () from /usr/libexec/ld.so
 #3  0x04469be3 in _dl_load_shlib_hint () from /usr/libexec/ld.so
 #4  0x04469e5c in _dl_load_shlib () from /usr/libexec/ld.so
 #5  0x0446766d in dlopen () from /usr/libexec/ld.so
 #6  0x0d731d54 in wine_dlopen (
 filename=0x877dd14a /usr/local/lib/../lib/wine/ntdll.dll.so, flag=2,
 error=0xcfbd5074 \224P½Ï, errorsize=1024) at loader.c:703
 #7  0x0d731cb6 in wine_init (argc=16392, argv=0xcfbd5020,
 error=0xcfbd5074 \224P½Ï, error_size=1024) at loader.c:655
 #8  0x1c000f92 in ?? ()
 #9  0x0002 in __stack_smash_handler ()
 #10 0xcfbd54f0 in ?? ()
 #11 0xcfbd5074 in ?? ()
 #12 0x0400 in ?? ()
 #13 0x3c00 in ?? ()
 #14 0x0020 in __stack_smash_handler ()
 #15 0x0030 in _dl_strdup ()
 Cannot access memory at address 0x20

 * I'm lost here.!

 * util.c has a stack protector dummy...

 void __stack_smash_handler(char [], int);

 void
 __stack_smash_handler(char func[], int damaged)
 {
 _dl_exit(127);
 }

 * _dl_exit is essentially (an asm wrapper for syscall)  _exit(127)

 * I don't know what to do now...except screaming for HLP.


 Jacob Meuser-2 wrote:
 
  On Sun, May 13, 2007 at 12:38:30AM +0200, Vortechz Anderson wrote:
  wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi
 
  Execution leads to segfault.
  (Note: Generic kernel _has_ SYSV MSG/SHM/SEMand I
  have not forgot sysctl machdep.userldt=1)
 
  I know there are some issues about wine's use of
  kernel threads on OpenBSD. I am clueless about the
  true
  problem though. If possible, I would like
  some comments on the ktrace kdump.
 
  looks familiar.
 
  before you even get to problems with threads, you have problems
  with wine wanting to control where things are located.
 
  I've got a port of 0.9.10 that gets a little farther than
  what you got here.  loads libwine and libc, but cannot load
  ntdll.dll.so.
 
  try setting 'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no'
  in your environment before running configure and see if that
  gets you any farther.
 
  definitely not a trivial port.
 
 
  // V.A.
 
 
   25268 ktrace   RET   ktrace 0
   25268 ktrace   CALL
  execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
   25268 ktrace   NAMI  /bin/wine
   25268 ktrace   RET   execve -1 errno 2 No such file
  or directory
   25268 ktrace   CALL
  execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
   25268 ktrace   NAMI  /sbin/wine
   25268 ktrace   RET   execve -1 errno 2 No