parthenon-hpc-lab/parthenon

New test failures with Sanitizers enabled

BenWibking opened this issue · 5 comments

Full output: https://github.com/parthenon-hpc-lab/parthenon/actions/runs/9570748747/job/26386226355

Failed tests:

The following tests FAILED:
	 60 - regression_mpi_test:restart (Failed)
	 62 - regression_mpi_test:restart_fine (Failed)
	 66 - regression_mpi_test:advection_convergence (Failed)
	 68 - regression_mpi_test:output_hdf5 (Failed)
	 70 - regression_mpi_test:advection_outflow (Failed)
	 72 - regression_mpi_test:bvals (Failed)
	 74 - regression_mpi_test:poisson (Failed)
	 76 - regression_mpi_test:poisson_gmg (Failed)
	 78 - regression_mpi_test:sparse_advection (Failed)
	 80 - regression_mpi_test:particle_tracers (Failed)

All of them have errors like this:

/__w/parthenon/parthenon/src/bvals/comms/bnd_info.hpp:50:8: runtime error: load of value -1425161296, which is not a valid value for type 'CoordinateDirection'
/__w/parthenon/parthenon/src/bvals/comms/bnd_info.hpp:50:8: runtime error: load of value 55636912, which is not a valid value for type 'CoordinateDirection'
/__w/parthenon/parthenon/src/bvals/comms/bnd_info.hpp:50:8: runtime error: load of value 365515696, which is not a valid value for type 'CoordinateDirection'
/__w/parthenon/parthenon/src/bvals/comms/bnd_info.hpp:50:8: runtime error: load of value -604773456, which is not a valid value for type 'CoordinateDirection'

struct BndInfo {

CoordinateDirection dir;

That member is completely unused in Parthenon (but possibly has been repurposed in downstream code? @adamdempsey90). I think the best thing to do would be to default initialize it to X0DIR.

I don't see these on my local machine. Maybe these are false positives? The CI container uses GCC 9.4.0...

I think the issue is that it is never explicitly initialized.

That member is completely unused in Parthenon (but possibly has been repurposed in downstream code? @adamdempsey90). I think the best thing to do would be to default initialize it to X0DIR.

Ok, thanks. I can create a PR for that.

We refactored our flux correction operator to not use CoordinateDirection dir, so we aren't using it anymore. I don't know about others.