On May 9, 2012, at 8:25 PM, John Fettig wrote: > In the function MatWrapML_SHELL, there is a return without creating the shell > matrix. I have two questions about it: > > m = mlmat->outvec_leng; > n = mlmat->invec_leng; > if (!m || !n){ > newmat = PETSC_NULL; > PetscFunctionReturn(0); > } > > 1) Should there be an error generated here? > > 2) If not, why does the function return without generating the matrix? This > can result in deadlock if some processes return in this clause and some do > not. The ones that do not get caught in the MatCreateShell() call. > > Regards, > John >
John, Is this a concern based on a code inspection, or do you have a particular case where it crashes? If you have a crashing case could you please send it to us? Thanks Barry