Subject: Re: ipc errors/Linux Emulation NetBSD-3BETA using Oracle
To: None <current-users@netbsd.org>
From: Christos Zoulas <christos@astron.com>
List: current-users
Date: 11/02/2005 03:51:05
In article <442838.1130902278222.JavaMail.root@cps7>,
GNMJLR@terra.es <jlrodriguez@terra.es> wrote:
>>----Mensaje original----
>>De: christos@astron.com
><Recibido: 
>02/11/2005 2:28
>>Para: <current-users@netbsd.org>
>>Asunto: Re: ipc 
>errors/Linux Emulation NetBSD-3BETA using Oracle
>>
>>Try to recompile 
>with a different MAX_SOPS define in <sys/sem.h> It is
>>currently 5. You 
>might want to add a debugging message to see how much
>>is needed. If 
>you need help doing that, please let me know.
>>
>>christos
>
>I  have 
>resolved the problem with the arguments, but there are others 
>remaining:
>
>I had to increase MAX_SOPS to 53.
>I activated the debug 
>defining SEM_DEBUG (options SEM_DEBUG).
>
>I obtain the next bugs:
>
>In 
>the output of the Oracle Server process:
>........
>skgm error 27121: 
>errno = 22, info = 1, 851968, 0, 0
>OPIRIP: Uncaught error 1034. Error 
>stack:
>ORA-01034: ORACLE not available
>ORA-27121: unable to determine 
>size of shared memory segment
>Linux Error: 22: Invalid argument
>
>From 
>the output of ktruss I can see these errors:
>(The 1182 is the server 
>process. It is a child of the 1144 process)
>It fails with setsid call
>.............
>  1182 oracle   RET   rt_sigprocmask 0
>  1182 oracle   
>CALL  rt_sigaction(0x17,0xbfbf8ad4,0xbfbf8a44,8)
>  1182 oracle   RET   
>rt_sigaction 0
>  1182 oracle   CALL  rt_sigprocmask(1,0xbfbf8e24,0,8)
>  
>1182 oracle   RET   rt_sigprocmask 0
>  1182 oracle   CALL  setsid
>  
>1182 oracle   RET   setsid -1 errno -1 Operation not permitted
>  1182 
>oracle   CALL  chdir(0xbfbfe294)
>  1182 oracle   NAMI  
>"/emul/linux/usr/oracle/oracle/9.2/dbs"
>  1182 oracle   NAMI  
>"/usr/oracle/oracle/9.2/dbs"
>  1182 oracle   RET   chdir 0
>  1182 
>oracle   CALL  ipc(0x17,0xba941e80,0,0,0)
>  1182 oracle   RET   ipc -1 
>errno -2 No such file or directory
>  1182 oracle   CALL  ipc(0x17,
>0xba941e81,0,0,0) 
>  1182 oracle   RET   ipc -1 errno -2 No such file 
>or directory
>  1182 oracle   CALL  ipc(0x17,0xba941e82,0,0,0)
>  1182 
>oracle   RET   ipc -1 errno -2 No such file or directory
>  1182 
>oracle   CALL  ipc(0x17,0xba941e83,0,0,0) 
>  1182 oracle   RET   ipc -1 
>errno -2 No such file or directory
>  1182 oracle   CALL  getuid 
>  1182 
>oracle   RET   getuid 101/0x65
>  1182 oracle   CALL  socketcall(1,0
>xbfbfbd14)
>  1182 oracle   RET   socketcall 8

Good progress! It is calling shmat() and failing for some reason because
some other shmat() failed earlier. It is easier to use ktrace -i and kdump
to look at the output. 

christos