Eeks, that's evil. Thanks for tracking this down and sending a
patch. I'll commit this to the svn repository.
Brian
On May 23, 2006, at 9:28 AM, Orion Poplawski wrote:
> The attached patch fixes a problem with MPI_Comm_accept. Symptom
> in the test suite is:
>
> /home/asc/lamtests-7.1.2b31/ccl/intercomm/./allgather_inter
> MPI_Comm_accept: unclassified: Bad address (rank 0, comm 2)
> Rank (0, MPI_COMM_WORLD): Call stack within LAM:
> Rank (0, MPI_COMM_WORLD): - MPI_Comm_accept()
> Rank (0, MPI_COMM_WORLD): - main()
>
> and it hangs.
>
> Problem is that writev() on this linux (Fedora Core 4) checks the
> addresses of all entries in the iovec even if the length is zero.
> The patch sets the address to NULL in MPI_Comm_accept, the calling
> routine.
>
> An alternate fix might be to make _cio_send() not use mwritev() if
> pkmsg->k_length is zero.
>
> --
> Orion Poplawski
> System Administrator 303-415-9701 x222
> Colorado Research Associates/NWRA FAX: 303-415-9702
> 3380 Mitchell Lane, Boulder CO 80301 http://www.co-ra.com
> --- lam-7.1.2/share/mpi/accept.c.writev 2006-05-22
> 16:42:26.204729187 -0600
> +++ lam-7.1.2/share/mpi/accept.c 2006-05-22 16:42:12.658047068 -0600
> @@ -367,6 +367,7 @@
>
> outmsg.nh_length = 0;
> outmsg.nh_flags = 0;
> + outmsg.nh_msg = NULL;
>
> _m2l_fillsys(lam_myproc->p_gps.gps_node, lam_myproc->p_gps.gps_idx,
> inmsg.nh_data[0], inmsg.nh_data[1], -1, port->prt_num,
> _______________________________________________
> lam-devel mailing list
> lam-devel_at_[hidden]
> http://www.lam-mpi.org/mailman/listinfo.cgi/lam-devel
|