Merge branch 'barry/2024-02-23/doc-trivial-mat' into 'main'Bug fix, calling MatXXXSetPreallocation on MPI matrices after MatSetOption() loses the option valueSee merge request petsc/petsc!7319
DS: Handle missing quad order
Trivial fix to MatSetValuesBlocked() manual page, spelling and spacing
Change the use of the _Fn suffix to indicate a typedef of a function to just FnAs determined on a vote on GitLab
Update `PetscSimplePointFunc` to new naming convention `PetscSimplePoint_Fn`Commit-type: housekeeping
Change PETSc sys typedef function names to use the new _Fn formatCommit-type: housekeeping, maintainance
DM+DS: Function to sync DS labels based on names
Merge branch 'jolivet/fix-ubsan' into 'main'Pacify UBSanSee merge request petsc/petsc!7158
DM: Correct misspelling
Sys: add PetscSafePointerPlusOffset() to pacify UBSan
LIBBASE is no longer used in make so remove it
Merge remote-tracking branch 'origin/release'
Update references in the manual pages to use Sphinx citation processing
Fix PetscOptionsGetViewer() so it works in a thread-safe wayWhen PetscOptionsGetViewer() returns, for example, PETSC_VIEWER_STDOUT_SELF the same object is sharedby all threads that call PetscOptio
Fix PetscOptionsGetViewer() so it works in a thread-safe wayWhen PetscOptionsGetViewer() returns, for example, PETSC_VIEWER_STDOUT_SELF the same object is sharedby all threads that call PetscOptionsGetViewer(). In the previous code PetscObjectReference() anddereference (via PetscViewerDestroy() where called on the viewer by multiple threads after the viewerwas accessed thus corrupting the object.This branch introduces a PetscOptionsRestoreViewer() that allows not doing the referencing and dereferencingon persistant viewers, thus removing the specific race condition above.Other possible solutions includeUse a lock on each PetscObjectReference/Dereference() just in case they are shared. Could be time consuming so onecould mark each object as either threadshared or independent and only do the locks on threadshared objects. This lowersthe cost but would require more extensive changes to PETSc infrastructure. And I do not know if this shared/not shared modelis what we need in the long run, though it might be.
show more ...
Fixes for use of Calling Sequence of ... in the manual page
Rename rules.doc and rules.utils because GitLab treats the former as a MS Word document.Thanks-to: Jed Brown
Fix typos
Convert all header guards to pragma once
Add static to internal functions
Fix -Wuninitializedpetsc/src/dm/dt/interface/dt.c:1651:50: warning: variable 'gab' is uninitialized when used here [-Wuninitialized] 1651 | mu0 = PetscPowReal(2., a + b + 1.) * ga * gb / gab;
Fix -Wuninitializedpetsc/src/dm/dt/interface/dt.c:1651:50: warning: variable 'gab' is uninitialized when used here [-Wuninitialized] 1651 | mu0 = PetscPowReal(2., a + b + 1.) * ga * gb / gab; | ^~~petsc/src/dm/dt/interface/dt.c:1628:24: note: initialize the variable 'gab' to silence this warning 1628 | PetscReal ga, gb, gab; | ^ | = 0.0
Manual linter fixes: dm
... and apply it
Rename PetscValidPointer -> PetscAssertPointer
12345678910>>...33