Path: utzoo!attcan!uunet!cs.utexas.edu!tut.cis.ohio-state.edu!bloom-beacon!gatech!ncar!dinl!noren From: noren@dinl.uucp (Charles Noren) Newsgroups: comp.unix.questions Subject: Re: Insufficient Resource Error on msgsnd Call Keywords: msgsnd, msgrcv, Ingres, UNIX, System V, message queues, Sun, SunOS4.0 Message-ID: <1029@dinl.mmc.UUCP> Date: 25 May 89 14:13:41 GMT References: <1023@dinl.mmc.UUCP> <8340@june.cs.washington.edu> Reply-To: noren@dinl.UUCP (Chuck Noren) Organization: Martin Marietta I&CS, Denver CO. Lines: 30 In article <8340@june.cs.washington.edu> ka@june.cs.washington.edu (Kenneth Almquist) writes: ]> +--------+ +--------+ +--------+ ]> | | +-----+ | | +-----+ | | ]> | Proc A |---->>| Q 1 |-->| Proc B |---->>| Q 2 |-->| Proc C | ]> | | +-----+ | | +-----+ | | ]> +--------+ +--------+ +--------+ ] ]On the other hand, you write: ] ]> Queue 2 looks empty because Process C is blocking on it (using ]> msgsnd with IPC_WAIT) ... ]> reading Queue 2 several times breaks the log jam and the system runs ^^^^^^^ ]> for a while ... ] ]If you can read messages off of queue 2 while process C is blocked on a ]read, that indicates a kernel bug. Probably the msgsnd system call is ]failing to call wakeup for some reason. ] Kenneth Almquist Oops, I meant to say Queue 1. Several have caught me on this one. I'm glad to see all of the good responses in spite of mis-stating some of the information. -- Chuck Noren NET: ncar!dinl!noren US-MAIL: Martin Marietta I&CS, MS XL8058, P.O. Box 1260, Denver, CO 80201-1260 Phone: (303) 971-7930