I have asked this question before but I still do not understand what git is doing here.
I pulled, made a fix, did a git status, and I see that I am 7 commits ahead of master. I commit and I am 8 commits ahead of master. What are these commits? I have not pulled from another branch, at least I did not knowingly. I am tempted to just start with a fresh clone and redo this whole thing. What is going on here? Did I sleep walk last night and pull from next? Can I just push this to master (I tested it and it is a trivial change) or should I reclone. etc.? Mark 19:10 edison03 master ~/petsc$ git status # On branch master # Your branch is ahead of 'origin/master' by 7 commits. # # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: src/ksp/pc/impls/fieldsplit/ftn-custom/zfieldsplitf.c # no changes added to commit (use "git add" and/or "git commit -a") 19:10 edison03 master ~/petsc$ git commit src/ksp/pc/impls/fieldsplit/ftn-custom/zfieldsplitf.c -m"fixed memory leak" [master d4dcd7b] fixed memory leak 1 file changed, 1 insertion(+) 19:10 edison03 master ~/petsc$ git pull origin master >From https://bitbucket.org/petsc/petsc * branch master -> FETCH_HEAD Already up-to-date. 19:11 edison03 master ~/petsc$ git status # On branch master # Your branch is ahead of 'origin/master' by 8 commits. # nothing to commit (working directory clean) 19:11 edison03 master ~/petsc$ On Sun, May 31, 2015 at 10:02 PM, Mark Adams <mfad...@lbl.gov> wrote: > This is coming from this line (last): > > #undef __FUNCT__ > #define __FUNCT__ "PCFieldSplitGetSubKSP_FieldSplit_Schur" > static PetscErrorCode PCFieldSplitGetSubKSP_FieldSplit_Schur(PC > pc,PetscInt *n,KSP **subksp) > { > PC_FieldSplit *jac = (PC_FieldSplit*)pc->data; > PetscErrorCode ierr; > > PetscFunctionBegin; > ierr = PetscMalloc1(jac->nsplits,subksp);CHKERRQ(ierr); > > I call it with: > > KSP::subksp(2) > .... > call PCFieldSplitGetSubKSP(solver%pc,PETSC_NULL_INTEGER,subksp,ierr) > > The Fortran wrapper is: > > PETSC_EXTERN void PETSC_STDCALL pcfieldsplitgetsubksp_(PC *pc,PetscInt > *n_local,KSP *ksp,PetscErrorCode *ierr) > { > KSP *tksp; > PetscInt i,nloc; > CHKFORTRANNULLINTEGER(n_local); > *ierr = PCFieldSplitGetSubKSP(*pc,&nloc,&tksp); if (*ierr) return; > if (n_local) *n_local = nloc; > CHKFORTRANNULLOBJECT(ksp); > if (ksp) { > for (i=0; i<nloc; i++) ksp[i] = tksp[i]; > } > } > > Should I just add a PetscFree(&tksp) here? > > > > On Sun, May 31, 2015 at 7:24 PM, Mark Adams <mfad...@lbl.gov> wrote: > >> >> >> On Sat, May 30, 2015 at 10:51 PM, Barry Smith <bsm...@mcs.anl.gov> wrote: >> >>> >>> Need more details. How can we reproduce this? >>> >> >> I was hoping this would be obvious. a missed free. >> >> What tests use Schur solvers? I could see if they have the same problem. >> >> >>> >>> Barry >>> >>> > On May 30, 2015, at 7:10 PM, Mark Adams <mfad...@lbl.gov> wrote: >>> > >>> > This look like there might be a memory leak in PETSc. Let me know if >>> this is not obvious and get more detail. >>> > Mark >>> > >>> > [0]Total space allocated 16 bytes >>> > [ 0]16 bytes PCFieldSplitGetSubKSP_FieldSplit_Schur() line 1263 in >>> /global/u2/m/madams/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c >>> > [0] PCFieldSplitGetSubKSP_FieldSplit_Schur() line 1263 in >>> /global/u2/m/madams/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c >>> > [0] PCFieldSplitGetSubKSP() line 1665 in >>> /global/u2/m/madams/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c >>> > [0] KSPSetUp() line 247 in >>> /global/u2/m/madams/petsc/src/ksp/ksp/interface/itfunc.c >>> > >>> >>> >> >