Unfortunately I am getting exactly the same result. I applied the patch (patch -p1 < fix-fortran-dmdasetaotype.patch)
Then I recompiled the library, and my code, but the error remains. Perhaps there is something else I’m missing? Randy > On Feb 17, 2016, at 3:15 PM, Barry Smith <bsm...@mcs.anl.gov> wrote: > > > Here is patch. <fix-fortran-dmdasetaotype.patch> > > If it works for you I'll put it in maint and master tomorrow. > > Barry > >> On Feb 17, 2016, at 3:46 PM, Randall Mackie <rlmackie...@gmail.com> wrote: >> >> The attached test program demonstrates the problem. When I run it, I get the >> following output: >> >> [0]PETSC ERROR: >> ------------------------------------------------------------------------ >> [0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, >> probably memory access out of range >> [0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger >> [0]PETSC ERROR: or see >> http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind >> [0]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X >> to find memory corruption errors >> [0]PETSC ERROR: likely location of problem given in stack below >> [0]PETSC ERROR: --------------------- Stack Frames >> ------------------------------------ >> [0]PETSC ERROR: Note: The EXACT line numbers in the stack are not available, >> [0]PETSC ERROR: INSTEAD the line number of the start of the function >> [0]PETSC ERROR: is given. >> [0]PETSC ERROR: [0] PetscStrlen line 150 >> /home/rmackie/PETSc/petsc-3.6.3/src/sys/utils/str.c >> [0]PETSC ERROR: [0] PetscStrallocpy line 185 >> /home/rmackie/PETSc/petsc-3.6.3/src/sys/utils/str.c >> [0]PETSC ERROR: [0] DMDASetAOType line 84 >> /home/rmackie/PETSc/petsc-3.6.3/src/dm/impls/da/daindex.c >> [0]PETSC ERROR: --------------------- Error Message >> -------------------------------------------------------------- >> [0]PETSC ERROR: Signal received >> [0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for >> trouble shooting. >> >> >> Randy >> >> >>> On Feb 17, 2016, at 11:35 AM, Barry Smith <bsm...@mcs.anl.gov> wrote: >>> >>> >>> Should be ok. Do you have implicit none and the correct include files so >>> AOMEMORYSCALABLE is defined? >>> >>> I think you need to run in the debugger next to track why this happens. >>> >>> Barry >>> >>>> On Feb 17, 2016, at 11:33 AM, Randall Mackie <rlmackie...@gmail.com> wrote: >>>> >>>> What is the correct way to set the AO for a DMDA to be the memory scalable >>>> version? >>>> >>>> I have tried this: >>>> >>>> call DMDASetAOType(da,AOMEMORYSCALABLE,ierr) >>>> call DMDAGetAO(da,ao,ierr) >>>> >>>> The code compiles fine, but I simply get a Segmentation Violation when I >>>> run it: >>>> >>>> [3]PETSC ERROR: >>>> ------------------------------------------------------------------------ >>>> [3]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, >>>> probably memory access out of range >>>> [3]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger >>>> [3]PETSC ERROR: or see >>>> http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind >>>> [3]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X >>>> to find memory corruption errors >>>> [3]PETSC ERROR: configure using --with-debugging=yes, recompile, link, and >>>> run >>>> [3]PETSC ERROR: to get more information on the crash. >>>> [3]PETSC ERROR: --------------------- Error Message >>>> -------------------------------------------------------------- >>>> [3]PETSC ERROR: Signal received >>>> [3]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html >>>> for trouble shooting. >>>> [3]PETSC ERROR: Petsc Release Version 3.6.3, Dec, 03, 2015 >>>> [3]PETSC ERROR: Configure options PETSC_ARCH=linux-gfortran-opt >>>> --with-clean=1 --with-scalar-type=complex --with-debugging=0 >>>> --with-fortran=1 --download-mpich=./mpich-3.1.3.tar.gz --FOPTFLAGS=-O3 >>>> --COPTFLAGS=-O3 >>>> [3]PETSC ERROR: #1 User provided function() line 0 in unknown file >>>> application called MPI_Abort(MPI_COMM_WORLD, 59) - process 3 >>>> [cli_3]: aborting job: >>>> >>>> >>>> In fact, I get the same thing even if I set the AOType to AOBASIC, in >>>> other words >>>> >>>> call DMDASetAOTYPE(da,AOBASIC,ierr) >>>> >>>> >>>> Previously, I did not set an AOType, and only called DMDAGetAO, which >>>> works fine, and from what I can tell sets the type to basic. >>>> >>>> >>>> Thanks, Randy M. >>> >> <test.F90><makefile> >