Hey Barry, Chang is one of my users and I’m out of my depth here:
> [0]PETSC ERROR: --------------------- Error Message > -------------------------------------------------------------- > [0]PETSC ERROR: Corrupt argument: > [0]PETSC ERROR: Invalid Pointer to Object: Parameter # 1 > [0]PETSC ERROR: #1 VecGetArray() line 1578 in It looks like VecGetArrayF90 is no longer allowed in callbacks, which is what seems to be happening here. Victor. On Jan 6, 2019, at 5:05 PM, Smith, Barry F. via petsc-users <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>> wrote: What is the error message, cut and paste the entire message? Barry On Jan 6, 2019, at 3:12 PM, Chang Liu via petsc-users <petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>> wrote: Hi All, Recently, when I am upgrading our code from 3.8 to 3.10, it always runs into error during VecGetArrayF90 call (it is Fortran90-based code). The reason we use is to access the array for our user-defined matrix-vector multiplication subroutine, for example: subroutine mymult(A,x,y,loco_ierr) !!!!!!!!!!!!!!! matrix-vector multiplication y=A.x !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! use mat_vec_mult,only:matvec implicit none Mat,intent(in)::A ! required by PETSc Vec,intent(in)::x Vec,intent(out)::y PetscErrorCode,intent(out)::loco_ierr PetscScalar,pointer::xx(:),yy(:) call VecGetArrayReadF90(x,xx,loco_ierr) call VecGetArrayF90(y,yy,loco_ierr) call matvec(xx,yy) call VecRestoreArrayReadF90(x,xx,loco_ierr) call VecRestoreArrayF90(y,yy,loco_ierr) return end subroutine mymult I checked the change log on the website and saw a statement: TAO: • Added VecLock{Push|Pop} calls around user callbacks; use of VecGetArray in user callbacks is now prohibited. Is there any relation to my issue? All the online PETSc examples and description for VecGetArray/VecGetArrayF90 are the same as PETSc/3.8. I tried to add/use VecLockPop/Push, but still doesn't work. I am confused and not sure what is the problem? Could I get some help? Thanks, -- Chang Liu PhD candidate Dept. of Electrical & Computer Engineering Ph: 765-7143357 Email: chang....@utexas.edu<mailto:chang....@utexas.edu>