Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

c: change the required shape of electric field to nloc * 3 #3237

Merged
merged 2 commits into from
Feb 6, 2024

Conversation

njzjz
Copy link
Member

@njzjz njzjz commented Feb 5, 2024

A segfault sometimes appears in the tests after #3223. The reason is that the required shape of the electric field is set to nall * 3 in the C interface, but a vector of nloc * 3 is given in the tests and lammps and used in the C++ interface. It was not caught before, as the program didn't write to these addresses (only reading it usually won't cause a segfault, unless the address is invalid).
Perhaps fix #2895.

A segfault sometimes appears in the tests after deepmodeling#3223. The reason is that the required shape of electric field is set to nall * 3 in the C interface, but a vector of nloc * 3 is actually given in the tests and lammps and used in the C++ interface. It's only found by sanitizer as the program doesn't write to the invalid address (only reading it won't cause segfault).

Signed-off-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu>
Signed-off-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu>
Copy link

codecov bot commented Feb 5, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (f5bb131) 21.19% compared to head (f43ba1d) 74.85%.

Additional details and impacted files
@@             Coverage Diff             @@
##            devel    #3237       +/-   ##
===========================================
+ Coverage   21.19%   74.85%   +53.65%     
===========================================
  Files         363      332       -31     
  Lines       32545    27987     -4558     
  Branches     1608      908      -700     
===========================================
+ Hits         6898    20949    +14051     
+ Misses      25086     6501    -18585     
+ Partials      561      537       -24     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@njzjz njzjz added the bug label Feb 5, 2024
@wanghan-iapcm wanghan-iapcm merged commit e281a8c into deepmodeling:devel Feb 6, 2024
48 checks passed
@njzjz njzjz added this to the v2.2.10 milestone Mar 17, 2024
@njzjz njzjz mentioned this pull request Apr 2, 2024
njzjz added a commit to njzjz/deepmd-kit that referenced this pull request Apr 6, 2024
…ing#3237)

[A
segfault](https://github.com/deepmodeling/deepmd-kit/actions/runs/7782245372/job/21218255452)
sometimes appears in the tests after deepmodeling#3223. The reason is that the
required shape of the electric field is set to nall * 3 in the C
interface, but a vector of nloc * 3 is given in the tests and lammps and
used in the C++ interface. It was not caught before, as the program
didn't write to these addresses (only reading it usually won't cause a
segfault, unless the address is invalid).
Perhaps fix deepmodeling#2895.

---------

Signed-off-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu>
(cherry picked from commit e281a8c)
@njzjz njzjz mentioned this pull request Apr 6, 2024
njzjz added a commit that referenced this pull request Apr 6, 2024
[A
segfault](https://github.com/deepmodeling/deepmd-kit/actions/runs/7782245372/job/21218255452)
sometimes appears in the tests after #3223. The reason is that the
required shape of the electric field is set to nall * 3 in the C
interface, but a vector of nloc * 3 is given in the tests and lammps and
used in the C++ interface. It was not caught before, as the program
didn't write to these addresses (only reading it usually won't cause a
segfault, unless the address is invalid).
Perhaps fix #2895.

---------

Signed-off-by: Jinzhe Zeng <jinzhe.zeng@rutgers.edu>
(cherry picked from commit e281a8c)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants