8954 Commits

Author SHA1 Message Date
Florian Krohm
b0ee68529f Give function copy_input_until_stop the noinline atribute.
At least one of the compilers for s390x nightly builds was inlining it.
Update exp files accoordingly. This should fix any residual back-trace 
noise for this testcase.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12235
2011-10-26 15:27:41 +00:00
Julian Seward
68cf6ae28d Some fixes for Android:
* initial support for Pandaboard/Linaro
* on Android/ARM, ask for non-executable stacks in the executables
* disable Memcheck's strcasestr intercept; its use of tolower()
  causes the dynamic linker to fail.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12234
2011-10-26 15:10:49 +00:00
Julian Seward
0509dad284 Disable the GDB server-by-default for the time being on Android, since
the mknod operations fail.  It can still be used if you can get past
that point, but you need an explicit --vgdb=yes for the time being.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12233
2011-10-26 15:07:56 +00:00
Florian Krohm
22af00bcad Fix an out-of-bounds array access found by IBM's BEAM checker.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12232
2011-10-25 21:37:15 +00:00
Florian Krohm
0092c719c3 Add script to summarize the outcome of nightly builds.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12231
2011-10-25 20:01:41 +00:00
Julian Seward
8bb0a1feea Bump the version.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12230
2011-10-25 09:20:05 +00:00
Julian Seward
e87217eb7a Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12227
2011-10-25 09:05:53 +00:00
Julian Seward
084b7cb10b Fix #284384 (clang 3.1 -Wunused-value warnings in valgrind.h,
memcheck.h) by changing a bunch of VALGRIND_DO_CLIENT_REQUEST_EXPR
into VALGRIND_DO_CLIENT_REQUEST_STMT for cases where the return value
of the former would be unused.  (Bart Van Assche, bart.vanassche@gmail.com)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12226
2011-10-24 13:21:57 +00:00
Julian Seward
805cd5cf65 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12225
2011-10-24 08:54:56 +00:00
Julian Seward
fc489f1101 Don't break fcntl locks when program does mmap. #280965.
(Rusty Russell, rusty@rustcorp.com.au)

tdb uses fcntl locks and mmap, and some of the tests fail under valgrind. 
strace showed valgrind opening the tdb file, reading 1024 bytes, then closing
it.  This is not allowed: POSIX says if you open and close a file, all fcntl
locks on it are dropped (insane, yes).

Finally got around to hacking the source to track this down: di_notify_mmap is
doing the damage.  The simplest fix was to hand in an optional fd for it to
use, then have it do pread.

I had to fix your pread; surely this should seek back even if the platform
doesn't have pread support?



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12224
2011-10-24 08:53:03 +00:00
Julian Seward
d8a36cfde4 gdbsrv: factorize gdb version handling, fix doc and typos
* fix various typos in doc
* following commit in gdb
   http://sourceware.org/ml/gdb-patches/2011-07/msg00742.html
  means unlimited length for valgrind watchpoints is understood by the
  (future) gdb 7.4 => doc updated
* factorize  gdb version detection and reporting in
  gdbserver_tests/make_local_links
* replace zignal by signal in a string used in umsg.
* updated gdbserver_tests/README_DEVELOPPERS (ref to --port vgdb option)

No functional change, tested on f12/x86, debian5/amd64, s390/RHEL4

Fixes #278892.  (Philippe Waroquiers, philippe.waroquiers@skynet.be)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12223
2011-10-24 07:36:57 +00:00
Julian Seward
daa6c4607b Change the behaviour of VALGRIND_CHECK_MEM_IS_DEFINED slightly, so
that if the range is partially non-addressable and it contains
undefined data, both errors are reported.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12222
2011-10-24 05:59:54 +00:00
Florian Krohm
42e26d9cc6 Add more missing files for the tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12221
2011-10-24 00:03:52 +00:00
Bart Van Assche
feaf65b757 Remove the Qt4 regression tests because these are too hard to maintain
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12220
2011-10-23 15:21:48 +00:00
Florian Krohm
b70e46e295 Remove pth_specific.c which is unused.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12219
2011-10-23 14:34:52 +00:00
Florian Krohm
c87d506673 Add some more missing files to the tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12218
2011-10-23 14:30:08 +00:00
Florian Krohm
0d689e773b Include README_DEVELOPERS for the GDB server in the tarball.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12217
2011-10-23 13:51:34 +00:00
Bart Van Assche
2c9b048a6d helgrind/tests/tc08_hbl2: Avoid busy-waiting
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12216
2011-10-23 13:28:20 +00:00
Bart Van Assche
e3020211d0 helgrind/tests/cond_timedwait_invalid: Update expected output because of r12213
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12215
2011-10-23 12:34:07 +00:00
Bart Van Assche
b89d16e2ba Check Makefile.am consistency before running regression tests. Closes #283813.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12214
2011-10-23 12:14:51 +00:00
Bart Van Assche
a37ce6c407 helgrind/tests/cond_timedwait_invalid: Port to Darwin 10.8
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12213
2011-10-23 12:11:15 +00:00
Julian Seward
5e7b95ac45 Update for 3.7.0. (What did I forget?)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12212
2011-10-23 10:05:47 +00:00
Julian Seward
20020ced87 More update for 3.7.0 (duh.)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12211
2011-10-23 09:57:26 +00:00
Julian Seward
dbbb3f90cd Update for 3.7.0.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12210
2011-10-23 09:55:34 +00:00
Julian Seward
b34ef00905 Update the list of fixed bugs and format properly.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12209
2011-10-23 09:09:54 +00:00
Julian Seward
f8b558a185 Update expected outputs following update of copyright dates.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12208
2011-10-23 08:24:43 +00:00
Julian Seward
0d7caa744f Get a bunch more copyright dates in the right format, 20xx-2011,
so the auto-update script will handle them correctly in future.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12207
2011-10-23 07:49:30 +00:00
Julian Seward
c96096ab24 Update all copyright dates, from 20xy-2010 to 20xy-2011.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12206
2011-10-23 07:32:08 +00:00
Julian Seward
50e64251cc Update, so as to be able to handle the 200x vs 201x change.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12205
2011-10-23 07:31:08 +00:00
Julian Seward
ba88dbd353 Make vgdb.c work on Android, so that the GDB server as a whole
will work on Android.  Fixes #283600.
(Philippe Waroquiers, philippe.waroquiers@skynet.be)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12204
2011-10-22 20:38:08 +00:00
Julian Seward
a07f759681 Addition of v.info scheduler monitor command
Monitor command useful for debugging/investigation of Valgrind unwinder and/or
gdbserver/gdb stack trace.

The Valgrind unwinder has some limitations compared to the GDB unwinder.
(see e.g. 278972).

With this monitor command, it is easy to see if the Valgrind unwinder
produces something different than the GDB unwinder.

Fixes #279212.  (Philippe Waroquiers, philippe.waroquiers@skynet.be)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12203
2011-10-22 20:23:30 +00:00
Julian Seward
ae9c958f70 Improvements in freelist handling for Memcheck. See #250065.
(Philippe Waroquiers, philippe.waroquiers@skynet.be)

This patch provides three improvements in the way the free list is 
handled in memcheck.

First improvement: a new command line option --freelist-big-blocks
(default 1000000) specifies the size of "free list big blocks". 
Such big blocks will be put on the free list, but will be re-cycled first
(i.e. in preference to block having a smaller size).
This fixes the bug https://bugs.kde.org/show_bug.cgi?id=250065.
Technically, the freed list is divided in two lists : small
and big blocks. Blocks are first released from the big block list.

Second improvement: the blocks of the freed list are re-cycled before
a new block is malloc-ed, not after a block is freed.
This gives better error messages for dangling pointer errors
when doing many frees without doing malloc between the frees.
(this does not uses more memory).

Third improvement: a block bigger than the free list volume will be
put in the free list (till a malloc is done, so as the needed memory
is not bigger than before) but will be put at the beginning of the
free list, rather than at the end. So, allocating then freeing such a
block does not cause any blocks in the free list to be released.

Results of the improvements above, with the new regression test
memcheck/test/big_blocks_freed_list: with the patch, 7 errors
are detected, 6 are giving the (correct) allocation stack.
Without the patch, only 6 errors are detected, 5 errors without
allocation stack, 1 with a (wrong) allocation stack.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12202
2011-10-22 19:48:57 +00:00
Julian Seward
f552193183 Allow garbage collection of the LAOG data structure(s). This avoids
quadratic growth on some apparently simple test cases.  Fixes #267925.
(Philippe Waroquiers, philippe.waroquiers@skynet.be)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12201
2011-10-22 19:29:51 +00:00
Bart Van Assche
25c42056c0 Add a custom filter for the drd/tests/annotate_barrier_xml regression test
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12200
2011-10-22 16:29:11 +00:00
Florian Krohm
92388bd248 Make VALGRIND_DO_CLIENT_REQUEST more user friendly by wrapping
its replacement in do .. while (0).


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12199
2011-10-22 15:04:05 +00:00
Bart Van Assche
3371d75b83 Revert r12195 because it triggers suspicious error messages on systems where
libtool has not been installed:

Can't exec "libtoolize": No such file or directory at /usr/bin/autoreconf line 196.
Use of uninitialized value in pattern match (m//) at /usr/bin/autoreconf line 196.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12198
2011-10-22 14:38:47 +00:00
Bart Van Assche
cdfc78b7e0 Remove the ppc-cross directory because the scripts in it are not fully functional
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12197
2011-10-22 13:45:49 +00:00
Bart Van Assche
f38e5e2034 Update Subversion ignore list
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12196
2011-10-22 10:40:21 +00:00
Bart Van Assche
e2fe6f00db autogen.sh: Use autoreconf as recommended in the autoconf manual
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12195
2011-10-22 10:39:43 +00:00
Julian Seward
b9b6742e1f Add an excessively minimal testcase, from #279698, pertaining to the
propagation of V bits through saturated narrowing operations.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12194
2011-10-22 09:55:37 +00:00
Bart Van Assche
7901e715e5 configure.in: Rearranged the TLS test such that autoreconf doesn't complain about it
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12193
2011-10-22 09:46:16 +00:00
Bart Van Assche
ae452d5320 Fix a compiler warning introduced in r12188
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12192
2011-10-22 09:42:05 +00:00
Julian Seward
7f6e929390 Record the ELF x86 regparm registers.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12191
2011-10-22 09:35:33 +00:00
Julian Seward
ef4bea6bb5 Change and simplify the way that Memcheck instruments saturating
narrowing operations.  The previous scheme was simply wrong and could
cause false negatives, by causing some narrowing operations to have a
defined output even when the inputs are undefined.  This was what
#279698 reported.  This patch is a fix for that bug.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12190
2011-10-22 09:29:41 +00:00
Bart Van Assche
de72c204b4 Ran configure.in through autoupdate:
- Replaced AC_CONFIG_HEADER() by AC_CONFIG_HEADERS().
- Replaced AC_TRY_LINK() by AC_LINK_IFELSE().
- Replaced AC_TRY_COMPILE() by AC_COMPILE_IFELSE().
- Removed AC_TYPE_SIGNAL because RETSIGTYPE isn't used anywhere.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12189
2011-10-22 09:21:24 +00:00
Bart Van Assche
72cd30c206 XML output: escape XML-metacharacters in executable path and arguments. This is a modified version of the patch submitted by Evgeniy Stepanov <eugeni.stepanov@gmail.com>. See also #284621.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12188
2011-10-22 08:24:32 +00:00
Julian Seward
1fd197db11 Add a replacement for strcasestr, along with test case. Fixes #282979.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12187
2011-10-21 08:07:13 +00:00
Julian Seward
141e66b02a Cause the build to fail when man pages aren't built properly. At
present that doesn't happen.  #272967, which is Debian bug 599563.
(Pierre Habouzit, madcoder@debian.org)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12186
2011-10-21 06:16:27 +00:00
Julian Seward
19f702f49f ML_(ppSym): minor improvement in debug printing for DiSyms.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12185
2011-10-21 05:00:37 +00:00
Julian Seward
9bb0938218 Debug printing only: when printing SB translation header lines,
print the object and SVMA too, so as to make it easy to find the
relevant bit of code by objdump -d of the object, even if the
function name is unknown.  Also re-order some of the fields.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12184
2011-10-21 04:59:56 +00:00