Commit Graph

8294 Commits

Author SHA1 Message Date
Julian Seward
46bbd35ea3 Make ld.so:index redir mandatory for glibc-2.12 and later, on x86-linux.
Also, improve the failure message a bit, so as to tell people what package
they need to install, in at least some cases.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11538
2011-02-11 16:47:03 +00:00
Bart Van Assche
b3f1163f39 Removed an unused variable.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11537
2011-02-10 21:09:25 +00:00
Bart Van Assche
b640febb3e DRD: don't inline pthread intercepts because in combination with the current fragile implementation of the CALL_FN_* macros inlining intercepts can easily trigger stack alignment errors on Darwin.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11536
2011-02-10 21:03:47 +00:00
Bart Van Assche
d282cac7dc Refined a comment in the NEWS file.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11535
2011-02-10 20:59:51 +00:00
Tom Hughes
65b4c42beb Add glibc 2.13 support. Patch from Dmitry Djachenko in bug #265964.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11534
2011-02-10 09:09:09 +00:00
Julian Seward
452a8046df _pre_mem_asciiz handlers in both tools: don't segfault if passed an
obviously invalid address.  Fixes #255009.  Investigation & initial
patch by Philippe Waroquiers (philippe.waroquiers@skynet.be)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11533
2011-02-09 12:47:23 +00:00
Bart Van Assche
2ca0b1b5d1 DRD: handle fork() in processes with detached threads correctly (see also #255355).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11532
2011-02-09 11:55:12 +00:00
Bart Van Assche
c45fda60bf Updated Subversion ignore list.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11531
2011-02-09 11:32:58 +00:00
Bart Van Assche
f6676e5fd7 Updated Subversion ignore list.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11530
2011-02-09 11:32:34 +00:00
Bart Van Assche
4410d07af2 Updated Subversion ignore list.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11529
2011-02-09 11:32:02 +00:00
Bart Van Assche
6ef338a462 Updated Subversion ignore list.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11528
2011-02-09 11:31:35 +00:00
Bart Van Assche
029e2bf3a6 Updated Subversion ignore list.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11527
2011-02-09 11:30:10 +00:00
Bart Van Assche
673552571f DRD: added a test program that forks a process containing a detached thread.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11526
2011-02-09 11:29:11 +00:00
Julian Seward
8598cd5e69 Don't assert in the child after a threaded program does fork().
Fixes #255355 (helgrind part).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11525
2011-02-09 10:34:00 +00:00
Josef Weidendorfer
923b3fc185 Fix bug 246152
When unwinding needs to be done because the stack pointer is reset
(e.g. by a longjmp), it makes no sense to interprete the control
flow change as call, but should be seen as a return.

This indirectly fixes bug 246152. Unwinding potentially changes the
exec state, which is unique for threads, but also for signal handlers.
E.g. this is true for a longjmp out of a signal handler. Exec state
changes modify members of struct CLG_(current_state), such as
CLG_(current_state).bbcc and CLG_(current_state).jmps_passed, which
are backed in CLG_(setup_bbcc)() by last_bbcc and passed, respectivly.
On a exec state change, these local vars go out of sync, and lead
to invalid data passed to CLG_(push_call_stack)() for handling a call,
which triggered data corruption, and the symptoms seen in bug 246152.
As in the given situation, there is no call anymore, there is no call
into CLG_(push_call_stack)(), and the corruption (or since last commit
the failed assertion) is not triggered any more.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11524
2011-02-04 20:50:58 +00:00
Josef Weidendorfer
9aad4ba3d5 Better failed assertion then silent data corruption
This is part 1 of the fix to bug 246152, and makes the bug
reproducable as failed assertion also on Ubuntu 10.10 on 64bit
machines. However, the test needs to be compiled 32bit (-m32).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11523
2011-02-04 19:55:25 +00:00
Bart Van Assche
fb1e012ed0 DRD: removed command-line option --free-is-write again since it is impossible
to implement this functionality reliably.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11522
2011-02-04 19:07:11 +00:00
Bart Van Assche
93f6b2653b vg-in-place: made sure that soft links to this script work fine too.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11521
2011-02-03 17:49:07 +00:00
Bart Van Assche
79f1b01520 DRD: do not assert() upon fork(). Fixes the DRD part of #255355.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11520
2011-02-03 17:47:50 +00:00
Julian Seward
fc17442b9a Add suppressions for __setenv leak. Fixes #188572.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11519
2011-02-02 17:16:48 +00:00
Julian Seward
cf593e897e Do the -m32 vs -m64 thing correctly for these tests. Fixes some very
strange failures on 64-bit OSX 10.6.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11518
2011-02-02 17:08:27 +00:00
Julian Seward
afa6fa71cb Handle Dwarf3 types created by GNAT. Fixes #255130.
(Philippe Waroquiers <philippe.waroquiers@skynet.be>)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11517
2011-02-01 23:10:14 +00:00
Julian Seward
30c3aef64f x86: get_otrack_shadow_offset_wrk: handle guest_NRADDR. Fixes #257276.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11516
2011-01-28 00:53:37 +00:00
Julian Seward
3bb7892440 Don't produce suppression stack pseudo-traces with more than
VG_MAX_SUPP_CALLERS entries in them.  Fixes #255822.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11515
2011-01-28 00:44:52 +00:00
Julian Seward
6904ae851c In 3 error-path cases, place the closing </valgrindoutput> on the
correct stream (XML instead of plain-text).  Fixes #255888.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11514
2011-01-28 00:19:25 +00:00
Julian Seward
da68954f7a Somewhat reduce the amount of mempool sanity checking, so as to avoid
rendering the mempool machinery impossibly slow for pools containing
many blocks.  Fixes #255966.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11513
2011-01-27 23:56:36 +00:00
Nicholas Nethercote
c3ae8f0ad3 If Massif's --threshold value was less than 1.0, in lines like this:
->00.00% (0B) in 11 places, all below massif's threshold (00.00%)

the threshold would always be incorrectly printed as 00.00%.  This was
because the percentage printing was broken for percentages less than 1.0.
This change fixes this problem, and modifies a test to check for it.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11511
2011-01-27 23:07:56 +00:00
Julian Seward
4e4990009a Add a new mempool test resulting from work on #254420, and update
expected output for an existing test.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11510
2011-01-23 20:47:26 +00:00
Julian Seward
5e6c90ea75 Improve error reports for addressing errors in the presence of
mempools: try and relate an invalid address to known mempool
allocated blocks, and if that fails, to malloc'd blocks that
back the mempool.  See #254420.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11509
2011-01-23 20:45:53 +00:00
Julian Seward
a8ee66085e Fix up out of date documentation for VALGRIND_CREATE_BLOCK and
VALGRIND_DISCARD.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11508
2011-01-22 11:21:58 +00:00
Julian Seward
39ae27adc6 Add a test for LOOPNEL. See #256669.
(Jakub Jelinek <jakub@redhat.com>)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11507
2011-01-21 20:59:52 +00:00
Julian Seward
70d8c1d1de Expand this test so as to cover FXSAVE and FXRSTOR, both REX.W and
non-REX.W variants.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11506
2011-01-21 18:14:32 +00:00
Julian Seward
549df2dc5d Add tests for SSE4.2 CRC32{B,W,L,Q} insns.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11505
2011-01-21 18:13:02 +00:00
Nicholas Nethercote
4f4749956f Print a stack trace as part of the "unhandled instruction bytes" warning.
Useful if the program in question catches signals, in which case the usual
"Process terminating..." stack trace isn't shown.  Requested by Jesse
Ruderman.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11504
2011-01-18 05:16:21 +00:00
Julian Seward
896e0e1b48 Add test cases for PCMPxSTRx $0x00.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11503
2011-01-17 23:10:39 +00:00
Julian Seward
166dd7ea1c Add tests for AAD and AAM (base 10 only).
(Vince Weaver, vince@csl.cornell.edu)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11502
2011-01-17 12:34:33 +00:00
Julian Seward
e513aa4606 Connect up tests for PCMPxSTRx to the build system.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11501
2011-01-17 11:42:19 +00:00
Julian Seward
dcce11f538 Connect up sse4 tests to the build system.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11500
2011-01-17 11:17:33 +00:00
Julian Seward
395293f5de Add build system goop for testing SSE4.2 instructions.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11499
2011-01-17 11:15:48 +00:00
Julian Seward
e55e050d3a Add test cases for EXTRACTPS, BLENDVPD, BLENDVPS, PBLENDVB.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11498
2011-01-17 10:40:53 +00:00
Josef Weidendorfer
54b757b90b Fix bug 263099
Correct a beginners PERL bug ;-)
Need to create new arrays, not just copying references to ARRAYs
around, which are modified later on...

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11497
2011-01-14 18:48:43 +00:00
Julian Seward
f99aceb21e Add tests for non-immediate-rounding-mode versions of ROUND{P,S}{S,D}.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11496
2011-01-11 18:26:16 +00:00
Julian Seward
ebfe3fcbe9 Improve performance of smc-checks substantially, by:
(1) allowing translations to chase across BB boundaries, as in the
    non-smc-check case

(2) on 64-bit targets, do the checksumming with 64-bit loads
    instead of 32-bit ones.

(valgrind-side change, to match vex r2070)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11495
2011-01-10 15:09:23 +00:00
Julian Seward
1852adcac0 Memcheck, None: update avg translation size to be more realistic.
Massif: specify avg translation size at all, so as to avoid excessive
retranslations caused by the fact that the default value is far below
reality for Massif.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11494
2011-01-10 15:01:03 +00:00
Julian Seward
28e09daf10 Only show per-offset access counts for allocations up to 1024 bytes,
to avoid producing ridiculous amounts of output.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11493
2011-01-10 14:56:59 +00:00
Nicholas Nethercote
71e0b2a3f8 Clarify some details about "possibly lost" heap blocks.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11491
2011-01-04 23:46:07 +00:00
Josef Weidendorfer
c3ff44e6e9 Fix typo
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11490
2011-01-04 21:09:14 +00:00
Julian Seward
30dcecc9c9 Un-break the trunk build on OSX (broken by r11483 on 6 Dec '10).
Fixes #261654.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11489
2011-01-04 14:18:35 +00:00
Nicholas Nethercote
c904167a7f Added a --mod-funcname option to cg_diff.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11488
2010-12-17 00:45:19 +00:00
Nicholas Nethercote
c318a53a2a When a shmat() size is passed to the tool, round it up to a page size. This
is how mmap() sizes are treated.  It fixes an assertion failure in Massif
with --pages-as-heap=yes.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11485
2010-12-08 02:51:43 +00:00