Re: wine-0.9.37 ktrace

2007-05-26 Thread Vortechz

I just realized you're right, most of the trouble are due to the errors you
point out.
(I certainly have a made a fool out of myself by now)

However, when I run make depend, comment out the building of dnsapi in
dlls/Makefile
and then run make, it seems to complete and ends up with the message Wine
build complete
as well as building the wine-pthread binary.



Michael Small 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
 
 
 Not for me.  Do you have patches?  The dnsapi error is this one,
 right?
 
 cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__
 -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings
 -Wpointer-arith  -O2 -pipe  -o name.o name.c
 In file included from name.c:46:
 dnsapi.h:143: error: syntax error before ns_msg
 dnsapi.h:144: error: syntax error before '*' token
 
 I could get this to compile by adding a LIB_DEPENDS on libbind
 and adding CFLAGS=-I/usr/local/include/bind
 
 But then I hit this error:
 
 cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__  -D_REENTRANT
 -fPIC -
 Wall -pipe -fno-strict-aliasing -Wwrite-strings -Wpointer-arith 
 -I/usr/local/incl
 ude/bind  -o ipstats.o ipstats.c
 ipstats.c: In function `getNumRoutes':
 ipstats.c:630: error: `RTF_MULTICAST' undeclared (first use in this
 function)
 ipstats.c:630: error: (Each undeclared identifier is reported only once
 ipstats.c:630: error: for each function it appears in.)
 ipstats.c: In function `getRouteTable':
 ipstats.c:704: error: `RTF_MULTICAST' undeclared (first use in this
 function)
 
 Two places in this file he's looking at the routing table using
 sysctl and wishes to leave out entries that are not gateways or
 that are multicast.  RTF_MULTICAST is defined in route.h in 
 freebsd and linux but not in OpenBSD.  Looking at this paragraph
 from the netstat man page, I though perhaps this wouldn't be an
 issue for OpenBSD, maybe the multicast check could be left out,
 maybe that's a separate table, but I'm uncertain:
 
   -g  Show information related to multicast (group address) routing.
By default, show the IP multicast virtual-interface and routing
tables.  If the -s option is also present, show multicast
 routing
statistics.
 
 I left it out for myself and then hit this error...
 
 cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__ -D_NTSYSTEM_
 -D_REENT
 RANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings
 -Wpointer-arith  -I/us
 r/local/include/bind  -o cdrom.o cdrom.c
 cdrom.c: In function `DVD_ReadStructure':
 cdrom.c:1911: error: syntax error before s
 cdrom.c:1919: error: `s' undeclared (first use in this function)
 c
 
 This was a case where Linux, NetBSD, etc. have a typedef for the 
 dvd_struct union in sys/cdio.h but OpenBSD has a regular union 
 definition.
 
 Then I hit this...
 
 cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__ -D_NTSYSTEM_
 -D_REENT
 RANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings
 -Wpointer-arith  -I/us
 r/local/include/bind  -o signal_i386.o signal_i386.c
 signal_i386.c:325: error: `T_MCHK' undeclared here (not in a function)
 signal_i386.c:325: error: enumerator value for `TRAP_x86_MCHK' not integer
 constan
 t
 signal_i386.c:349: error: `T_XMMFLT' undeclared here (not in a function)
 signal_i386.c:349: error: enumerator value for `TRAP_x86_CACHEFLT' not
 integer con
 stant
 signal_i386.c: In function `segv_handler':
 signal_i386.c:1186: error: duplicate case value
 signal_i386.c:1181: error: previously used here
 
 Here, although there's an if defined including __OpenBSD__ at the top
 of an enum, there are two definitions with slightly different names
 in OpenBSD trap.h than they try to use.
 
 I'm guessing there will be more stuff to come, but I was wondering
 if you already worked through all these yourself to get it to compile.
 
 I hope to get it to compile sometime this week, although I'm not sure 
 if I'll be able to help with threading issues.  The archives mention 
 something about using vfork in a weird, linux specific way.  Maybe 
 that would be something to look at?
 
 If you look at .../libs/wine/mmap.c there are some troubling comments
 above and within try_mmap_fixed, as well as an #if defined(__NetBSD__).
 
 
 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.
 
 // V.A. 
 
 
  25268 ktrace   RET   ktrace 0
  25268 ktrace   CALL 
 ...
 execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
  25268 ktrace   NAMI  /usr/local/bin/wine
  25268 wine NAMI  /usr/libexec/ld.so
  25268 wine EMUL  native
  25268 wine RET   execve 0
  25268 wine CALL  issetugid()
  25268 wine RET   issetugid 0
  25268 

Re: wine-0.9.37 ktrace

2007-05-15 Thread Jacob Meuser
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   CALL 
 execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
  25268 ktrace   NAMI  /usr/local/bin/wine
  25268 wine NAMI  /usr/libexec/ld.so
  25268 wine EMUL  native
  25268 wine RET   execve 0
  25268 wine CALL  issetugid()
  25268 wine RET   issetugid 0
  25268 wine CALL  mprotect(0x2a6d5000,0x1000,0x1)
  25268 wine RET   mprotect 0
  25268 wine CALL 
 mmap(0,0x1000,0x3,0x1002,0x,0,0,0)
  25268 wine RET   mmap -1 errno 12 Cannot allocate
 memory
  25268 wine PSIG  SIGSEGV SIG_DFL code 1
 addr=0xa6d7bec trapno=1
  25268 wine NAMI  wine.core
 
 
 
   
   
   
 _
 Flyger tiden iv?g? F?nga dagen med Yahoo! Mails inbyggda
 kalender. Dessutom 250 MB gratis, virusscanning och antispam. F? den p?: 
 http://se.mail.yahoo.com
 

-- 
[EMAIL PROTECTED]
SDF Public Access UNIX System - http://sdf.lonestar.org



Re: wine-0.9.37 ktrace

2007-05-15 Thread Vortechz

Multireply, really...

Mikolaj: RTHREADS in kernel makes no difference at this point
and the problem seems to be within ld.so, see below...

 wine-0.9.37 compiles on OpenBSD 4.1, except the dnsapi

Michael: I don't care whether there are dlls which does not compile
until wine is running, but feel free to patch dnsapi if you really want to.

 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.

Uhmnot really

definitely not a trivial port.

I found this, so I think one has to figure out whether ld.so works
as it should, before even thinking about a wine port.
I have been really discouraged by now, so don't expect any fireworks.

http://www.kerneltraffic.org/wine/wn20030829_185.html#3
[...cut...]


-- 
View this message in context: 
http://www.nabble.com/wine-0.9.37-ktrace-tf3733527.html#a10629252
Sent from the openbsd user - ports mailing list archive at Nabble.com.



Re: wine-0.9.37 ktrace

2007-05-15 Thread Vortechz

Uh, well...some progress coming up...but I don't know
whether I'm getting closer or just being lucky ;)

(I'm sorry if this post is unclear and/or of very little use.
I'm not used to twisting/tweaking/porting software.)

I put: 

'ac_cv_cflags__Wl___section_start__interp_0x7bf00400=no'

exported that as well, and ran 

configure --disable-win16

I believe the win16 might be responsible for the DOS low mem mapping
sc***ing things up...but I haven't checked that, just to confuse myself
and everyone else...

I commented out the dnsapi line in dlls/Makefile...

next I compiled:

make depend ; make 

and tried running:

ktrace wine-pthreads /emul/w/windows/sol.exe 
(Note: I try that because sol.exe runs under the 
current wine-99 OpenBSD port.)

...which created a *huge* ktrace.out file

output from program was only wine: failed to initialize: File not found

Here are the last four rows of code in main.c, which is the 
only place I can find that error msg:

wine_pthread_set_functions( pthread_functions,
sizeof(pthread_functions) );
wine_init( argc, argv, error, sizeof(error) );
fprintf( stderr, wine: failed to initialize: %s\n, error );
exit(1);

After kdumping into text file, I did some greps for relevant things:

grep -n '.so' wtf
4: 20251 wine-pthread NAMI  /usr/libexec/ld.so
18: 20251 wine-pthread NAMI  /var/run/ld.so.hints
30: 20251 wine-pthread NAMI  /usr/local/lib/libwine.so.1.0
226: 20251 wine-pthread NAMI  /usr/lib/libpthread.so.7.0
392: 20251 wine-pthread NAMI  /usr/lib/libc.so.40.3
571: 20251 wine-pthread NAMI  /usr/lib/libossaudio.so.3.0

grep -n not found wtf
100890:   wine: failed to initialize: File not found

About 150 lines above, /usr/local/lib/wine is opened, so there
might be something missing there...?
The closest access I can see is this: (note: 20251 is pid)

 20251 wine-pthread NAMI  /usr/local/lib/wine 
 20251 wine-pthread RET   open 5
 20251 wine-pthread CALL  fstat(0x5,0xcfbc8420)

grep -n 'lib' wtf
4: 20251 wine-pthread NAMI  /usr/libexec/ld.so
27: 20251 wine-pthread NAMI  $ORIGIN/../lib
30: 20251 wine-pthread NAMI  /usr/local/lib/libwine.so.1.0
223: 20251 wine-pthread NAMI  $ORIGIN/../lib
226: 20251 wine-pthread NAMI  /usr/lib/libpthread.so.7.0
389: 20251 wine-pthread NAMI  $ORIGIN/../lib
392: 20251 wine-pthread NAMI  /usr/lib/libc.so.40.3
568: 20251 wine-pthread NAMI  $ORIGIN/../lib
571: 20251 wine-pthread NAMI  /usr/lib/libossaudio.so.3.0
1624: 20251 wine-pthread NAMI  /usr/local/lib/../bin/wineserver
100687: 20251 wine-pthread NAMI  /usr/local/lib/wine
100702: 20251 wine-pthread NAMI  /usr/local/lib/wine
100723: 20251 wine-pthread NAMI  /usr/local/lib/wine
100736: 20251 wine-pthread NAMI  /usr/local/lib/wine

Uh..$ORIGIN??

Another grep, which I won't paste here, is allocate memory, which seems to
occupy every other line from ~2400 to ~100600.

Example: 
wine-pthread CALL  mmap(0x9f23,0x13f,0,0x1442,0x,0,0,0)
wine-pthread RET   mmap -1 errno 12 Cannot allocate memory

I don't understand why mmap is called with eight args, maybe
it's trivial for those who know.

// V.A.

-- 
View this message in context: 
http://www.nabble.com/wine-0.9.37-ktrace-tf3733527.html#a10633012
Sent from the openbsd user - ports mailing list archive at Nabble.com.



Re: wine-0.9.37 ktrace

2007-05-15 Thread Vortechz


Vortechz wrote:
 
 [...cut...]
 grep -n not found wtf
 100890:   wine: failed to initialize: File not found
 
 About 150 lines above, /usr/local/lib/wine is opened, so there
 might be something missing there...?
 The closest access I can see is this: (note: 20251 is pid)
 
  20251 wine-pthread NAMI  /usr/local/lib/wine 
  20251 wine-pthread RET   open 5
  20251 wine-pthread CALL  fstat(0x5,0xcfbc8420)
 
NOTE: I did run make install as well, although I forgot to mention that.

-- 
View this message in context: 
http://www.nabble.com/wine-0.9.37-ktrace-tf3733527.html#a10633282
Sent from the openbsd user - ports mailing list archive at Nabble.com.



Re: wine-0.9.37 ktrace

2007-05-14 Thread Michael Small
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
 

Not for me.  Do you have patches?  The dnsapi error is this one,
right?

cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__
-D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings
-Wpointer-arith  -O2 -pipe  -o name.o name.c
In file included from name.c:46:
dnsapi.h:143: error: syntax error before ns_msg
dnsapi.h:144: error: syntax error before '*' token

I could get this to compile by adding a LIB_DEPENDS on libbind
and adding CFLAGS=-I/usr/local/include/bind

But then I hit this error:

cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__  -D_REENTRANT 
-fPIC -
Wall -pipe -fno-strict-aliasing -Wwrite-strings -Wpointer-arith  
-I/usr/local/incl
ude/bind  -o ipstats.o ipstats.c
ipstats.c: In function `getNumRoutes':
ipstats.c:630: error: `RTF_MULTICAST' undeclared (first use in this function)
ipstats.c:630: error: (Each undeclared identifier is reported only once
ipstats.c:630: error: for each function it appears in.)
ipstats.c: In function `getRouteTable':
ipstats.c:704: error: `RTF_MULTICAST' undeclared (first use in this function)

Two places in this file he's looking at the routing table using
sysctl and wishes to leave out entries that are not gateways or
that are multicast.  RTF_MULTICAST is defined in route.h in 
freebsd and linux but not in OpenBSD.  Looking at this paragraph
from the netstat man page, I though perhaps this wouldn't be an
issue for OpenBSD, maybe the multicast check could be left out,
maybe that's a separate table, but I'm uncertain:

  -g  Show information related to multicast (group address) routing.
   By default, show the IP multicast virtual-interface and routing
   tables.  If the -s option is also present, show multicast routing
   statistics.

I left it out for myself and then hit this error...

cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__ -D_NTSYSTEM_ 
-D_REENT
RANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings -Wpointer-arith  
-I/us
r/local/include/bind  -o cdrom.o cdrom.c
cdrom.c: In function `DVD_ReadStructure':
cdrom.c:1911: error: syntax error before s
cdrom.c:1919: error: `s' undeclared (first use in this function)
c

This was a case where Linux, NetBSD, etc. have a typedef for the 
dvd_struct union in sys/cdio.h but OpenBSD has a regular union 
definition.

Then I hit this...

cc -c -I. -I. -I../../include -I../../include  -D__WINESRC__ -D_NTSYSTEM_ 
-D_REENT
RANT -fPIC -Wall -pipe -fno-strict-aliasing -Wwrite-strings -Wpointer-arith  
-I/us
r/local/include/bind  -o signal_i386.o signal_i386.c
signal_i386.c:325: error: `T_MCHK' undeclared here (not in a function)
signal_i386.c:325: error: enumerator value for `TRAP_x86_MCHK' not integer 
constan
t
signal_i386.c:349: error: `T_XMMFLT' undeclared here (not in a function)
signal_i386.c:349: error: enumerator value for `TRAP_x86_CACHEFLT' not integer 
con
stant
signal_i386.c: In function `segv_handler':
signal_i386.c:1186: error: duplicate case value
signal_i386.c:1181: error: previously used here

Here, although there's an if defined including __OpenBSD__ at the top
of an enum, there are two definitions with slightly different names
in OpenBSD trap.h than they try to use.

I'm guessing there will be more stuff to come, but I was wondering
if you already worked through all these yourself to get it to compile.

I hope to get it to compile sometime this week, although I'm not sure 
if I'll be able to help with threading issues.  The archives mention 
something about using vfork in a weird, linux specific way.  Maybe 
that would be something to look at?

If you look at .../libs/wine/mmap.c there are some troubling comments
above and within try_mmap_fixed, as well as an #if defined(__NetBSD__).


 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.
 
 // V.A. 
 
 
  25268 ktrace   RET   ktrace 0
  25268 ktrace   CALL 
...
 execve(0xcfbc4960,0xcfbc4ebc,0xcfbc4ec8)
  25268 ktrace   NAMI  /usr/local/bin/wine
  25268 wine NAMI  /usr/libexec/ld.so
  25268 wine EMUL  native
  25268 wine RET   execve 0
  25268 wine CALL  issetugid()
  25268 wine RET   issetugid 0
  25268 wine CALL  mprotect(0x2a6d5000,0x1000,0x1)
  25268 wine RET   mprotect 0
  25268 wine CALL 
 mmap(0,0x1000,0x3,0x1002,0x,0,0,0)
  25268 wine RET   mmap -1 errno 12 Cannot allocate
 memory
  25268 wine PSIG  SIGSEGV SIG_DFL code 1
 addr=0xa6d7bec trapno=1
  25268 wine NAMI  wine.core


-- 
Mike Small
[EMAIL PROTECTED]



Re: wine-0.9.37 ktrace

2007-05-12 Thread Mikolaj Kucharski
Hi,

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.

Is it make sense to compile kernel with RTHREADS defined and try
run wine?

-- 
best regards
q#