[petsc-dev] MatWrapML_SHELL

John Fettig john.fettig at gmail.com
Wed May 9 20:25:53 CDT 2012


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20120509/12ec2bcb/attachment.html>


More information about the petsc-dev mailing list