Newsgroups: comp.parallel.pvm
From: wrankin@ee.duke.edu (William T. Rankin)
Subject: Re: signals and pvm
Organization: Duke University EE Dept.; Durham, NC
Date: 17 Jan 1995 00:16:35 GMT
Message-ID: <3ff293$ac5@news.duke.edu>

In article <subraman.790297368@shazam.cs.iastate.edu>, subraman@cs.iastate.edu (Krishnan Subramaniam) writes:
|> Hi,

Hullo.

|> 	Does pvm handle signals correctlt ie if it is the middle of
|> a read/write to a socket and the task gets a signal thru pvm_sendsig
|> then what happens ? Is that packet simply "lost" and pvm retries or 
|> is there some inbuilt signal handler which takes care of all this ?

From the PVM man pages on pvm_sendsig() it appears that the PVM
code is non-reentrant, so if you get a user interrupt in the middle
of a pvm_send() or pvm_recv(), and your signal handler tries to do a
pvm_send() or pvm_recv() then you are in definite trouble.

I don't think the code will abort otherwise, but I could be wrong :-)

The best thing to do, if using signals, is to mask out the interrupts
while doing sends or receives.  I managed to write an pseudo active message 
layer under PVM by doing this.

-bill


-- 
----                                /       __/    /    /
bill rankin                        /              /    /
wrankin@ee.duke.edu               ___  /    /    /    /
philosopher/coffee-drinker       /    /    /    /    /
molecules-R-us                  /    /    /    /    /
                             _______/  __/  __/  __/

"All I wanna do is have a little fun before I die."  - Sheryl Crow

