Date: Fri, 23 Jan 1998 01:49:54 -0500 From: Matthew Hagerty <matthew@wolfepub.com> To: FREEBSD-HACKERS@FreeBSD.ORG Subject: Semaphore semop(), semctl() error 22 Message-ID: <3.0.1.32.19980123014954.006a7204@wolfepub.com>
next in thread | raw e-mail | index | archive | help
Greetings, I posted this in freebsd-questions but was told it should probably be posted in -hackers. Please excuse me if it is inappropriate. I am trying to bet a BSDI binary (an RDBMS, Raima Velocis-1.4.1) to run on 2.2.5-Release. The server starts fine, but when I try to access it, it crashes with an error to semop(), then to semctl() error 22. Here is the error that I get on the terminal: **** rm_syncDelete() semctl() failure, errno=22 (Invalid argument) I did a ktrace and kdump to see what might be going on, but since I'm really not sure what I'm looking at, it did not help me much. In the kdump, there are several (about 100 actually) of these groups of lines that seem to get the errors rolling: 196 rds CALL semop(0x10000,0xefbfdbcc,0x1) 196 rds PSIG SIGALRM caught handler=0xdb8b8 mask=0x0 code=0x0 196 rds RET semop -1 errno 4 Interrupted system call . . Then later they get worse: . 196 rds CALL write(0x2,0xefbfcc84,0x44) 196 rds GIO fd 2 wrote 68 bytes "**** rm_syncEnterExcl() semop() failure, errno=22 (Invalid argument)" . . And worse . 196 rds GIO fd 2 wrote 14 bytes "NCP Child died" 196 rds RET write 14/0xe . . Now semctl . 196 rds CALL write(0x1,0x139000,0x43) 196 rds GIO fd 1 wrote 67 bytes "**** rm_syncDelete() semctl() failure, errno=22 (Invalid argument) " 196 rds RET write 67/0x43 . . Server tries to abort . 196 rds CALL write(0x2,0xefbfccf0,0x12) 196 rds GIO fd 2 wrote 18 bytes "***SERVER ABORT***" 196 rds RET write 18/0x12 . . But can't . 196 rds CALL write(0x1,0x139000,0x43) 196 rds GIO fd 1 wrote 67 bytes "**** rm_syncDelete() semctl() failure, errno=22 (Invalid argument) " 196 rds RET write 67/0x43 Most of this repeats. I had to do a kill pid to stop the server. I have set: options SYSVSHM options SYSVSEM options SYSVMSG in a custom kernel, but this does not seem to help. Is there anything else I should check? I noticed *many* options for semaphores in the kernel LINT file, but I have no idea if any of those parameters are relavent to this problem, and if so, what they *should* be set to. Any info, pointers, man pages to read, etc. would be greatly appreciated. Also, how compatable is FreeBSD's semaphores to BSDI's? I was told that FreeBSD's *native* operating mode was BSD (or is that BSD/OS, BSDI, or BSD-4.4?) No emulation needed like for SCO or Linux binaries. Then again, I think BSD4.4 borrowed semaphores from SVR4? Yes, no? Please to email since I am not currently subscribed to the list. Thank you for you time and efforts, FreeBSD is a great system. Matthew Hagerty wpub1@net-link.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3.0.1.32.19980123014954.006a7204>