-
-
Notifications
You must be signed in to change notification settings - Fork 480
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
Sage should ship its Valgrind suppressions file, or not insist on its presence #11918
Comments
This comment has been minimized.
This comment has been minimized.
comment:3
sage.supp is part of the optional valgrind package which BTW is out of date. According to http://groups.google.com/group/sage-devel/browse_thread/thread/1657cccac33c9dd7 Is this still necessary? |
comment:4
Replying to @a-andre:
Yes, but it's IMHO pointless to install an (almost always) obsolete spkg just to get a file which consists of only a few lines. It should be part of the standard distribution. (More recent Not testing for its presence (btw. without any meaningful error message from Sage's side) is certainly a bug.
I think so, but it should be kept up-to-date anyway. |
Changed keywords from --memcheck sage.supp suppressions to --valgrind --memcheck sage.supp suppressions |
sage --valgrind
etc. apparently broken
comment:6
P.S.: Thanks for bringing this ticket back to my mind. We recently had some discussion on the IRC regarding the spkg, but I completely forgot about the ticket... ;-) |
Attachment: sage.supp.gz sage-valgrind suppression file (store as $SAGE_LOCAL/lib/valgrind/sage.supp) |
comment:9
Until this ticket is fixed, I've attached attachment: sage.supp, which might help people with using valgrind in the mean time. File should be at |
comment:10
Hi Nils, thank you for the sage.supp at #11918! When I run the tests of sage/rings/polynomial/infinite_polynomial_ring.py (which make Volker's patchbot at #12876 segfault, even though they are fine for me, I do not get a SIGILL. But I do get a considerable amount of lost memory:
Is there a way to find out what singular_function or what cached method are involved? |
comment:11
Isn't it telling you?
You should be able to look that line up: I have no experience with valgrind myself. However, I think Python's memory management can confuse valgrind quite a bit. I was actually more hoping for a "double free" or "access to freed memory block" type error (i.e., illegal use of a pointer value.) It may well be that my SIGILL is indeed a matter of mpfr on Corei7 compiling to something that's too fancy for valgrind and not a pointer to an error. |
comment:12
Replying to @nbruin:
No, it isn't. It just tells that it is a singular_function (as defined in sage.libs.singular.function), but it could be any function of Singular (std, slimgb, reduce, system, ...) |
comment:13
Replying to @simon-king-jena:
Oh, right. That's going to just as opaque as debugging python code with gdb then. I guess you could try and set a breakpoint at the function and then investigate the arguments? It's triggering Anyway, given that there's a good chance this is a false positive anyway, perhaps this call sequence might not be the one to concentrate on. I'd imagine |
comment:15
Ping! Is anybody inclined to fix this? Sorry that my knowledge of valgrind is too limited for doing this myself. |
comment:19
This has been fixed with #15586. |
Reviewer: Volker Braun |
As reported on the IRC, running
sage --valgrind
(aliassage --memcheck
) is apparently broken because the suppressions file is missing (and its directory,$SAGE_LOCAL/lib/valgrind/
, doesn't exist).Both
sage-valgrind
andsage-doctest
seem to hardcode$SAGE_LOCAL/lib/valgrind/sage.supp
.Unless we again(?) create and ship this file, we could at least add
to
sage-valgrind
.Using variables (perhaps also specifiable by the user) for both the directory and the filename would be better of course.
And / or only pass
--suppressions=...
if the file really exists.CC: @roed314 @simon-king-jena
Component: scripts
Keywords: --valgrind --memcheck sage.supp suppressions
Reviewer: Volker Braun
Issue created by migration from https://trac.sagemath.org/ticket/11918
The text was updated successfully, but these errors were encountered: