Sorry for the long delay in replying -- this mail got lost in my usual INBOX overflow, etc.
On Jan 12, 2012, at 11:05 AM, devendra rai wrote: > Hello Community: > > I am running into a strange problem. I get a SIGSEGV when I try to execute > MPI_Test: > > ==21076== Process terminating with default action of signal 11 (SIGSEGV) > ==21076== Bad permissions for mapped region at address 0x43AEE1 > ==21076== at 0x509B957: ompi_request_default_test (req_test.c:68) > ==21076== by 0x50EDEBB: PMPI_Test (ptest.c:59) > ==21076== by 0x44210D: InterProcessorTransmit::StartTransmission() > (InterProcessorTransmit.cpp:111) The problem is in your code; see below. > Here is the relevant piece of code: > > for ( this->dbIterator = localdb.begin( ) ; this->dbIterator != > localdb.end( ); this->dbIterator++) > { > this->TransmissionDetails = (this->dbIterator)->second; > SendComplete = 0; > UniqueIDtoSendto = std::get<0>(this->TransmissionDetails); > RecepientNode = (this->dbIterator)->first; > Isend_request = MPI::COMM_WORLD.Issend(this->transmitbuffer, > this->transmissionsize, MPI_BYTE, (this->dbIterator)->first, > std::get<0>(this->TransmissionDetails)); > /*This is line 111 */MPI_Test(&(this->Isend_request), &(this->SendComplete), > &(this->ISend_status)); You assigned the request to Isend_request, but then tested this->Isend_request. Those are two different variables. Your debugger screenshot shows that this->Isend_request was NULL (i.e., had a value of 0), so when OMPI tried to dereference through it, it segv'ed. -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/