]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
15 years agoAdd the default stderr_filter for this directory; else no tests work.
Julian Seward [Sun, 3 Jan 2010 23:44:34 +0000 (23:44 +0000)] 
Add the default stderr_filter for this directory; else no tests work.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11002

15 years agoHandle Iop_SqrtF32.
Julian Seward [Sun, 3 Jan 2010 22:29:32 +0000 (22:29 +0000)] 
Handle Iop_SqrtF32.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11001

15 years agoFurther buildsystem bashing, in order to try and get something
Julian Seward [Sun, 3 Jan 2010 21:25:08 +0000 (21:25 +0000)] 
Further buildsystem bashing, in order to try and get something
make-dist-able.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11000

15 years agoMake sure the Memcheck tests are built on arm-linux using hardware
Julian Seward [Sun, 3 Jan 2010 21:24:09 +0000 (21:24 +0000)] 
Make sure the Memcheck tests are built on arm-linux using hardware
floating point, since the softfloat results are way different from the
hardware one (not to mention, V reports lots of accesses-below-the-SP
in the softfloat helper functions.)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10999

15 years agoTry to integrate none/tests/arm properly in the build system.
Julian Seward [Sun, 3 Jan 2010 17:40:07 +0000 (17:40 +0000)] 
Try to integrate none/tests/arm properly in the build system.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10998

15 years agoDisable this test (effectively) on arm-linux, since that uses
Julian Seward [Sun, 3 Jan 2010 16:10:14 +0000 (16:10 +0000)] 
Disable this test (effectively) on arm-linux, since that uses
sys_rt_sigprocmask and not the Aulde Fashionede sys_sigprocmask.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10997

15 years agoarm-linux: handle sys_signalfd4 and sys_eventfd2. Makes
Julian Seward [Sun, 3 Jan 2010 11:46:50 +0000 (11:46 +0000)] 
arm-linux: handle sys_signalfd4 and sys_eventfd2.  Makes
memcheck/tests/linux-syscalls-2007 succeed on this platform.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10996

15 years agoPortability fix for arm-linux.
Julian Seward [Sun, 3 Jan 2010 11:39:01 +0000 (11:39 +0000)] 
Portability fix for arm-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10995

15 years agoHandle sys_pipe2 on arm-linux; also add some missing numbers to
Julian Seward [Sun, 3 Jan 2010 11:29:35 +0000 (11:29 +0000)] 
Handle sys_pipe2 on arm-linux; also add some missing numbers to
vki-scnums-arm-linux.h.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10994

15 years agoarm-linux: fake up the commpage entry at a lower level (in
Julian Seward [Sun, 3 Jan 2010 10:14:03 +0000 (10:14 +0000)] 
arm-linux: fake up the commpage entry at a lower level (in
parse_procselfmaps) so that the sync checker still works.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10993

15 years agoVarious minor fixups to make ppc32/64-linux work again following
Julian Seward [Sat, 2 Jan 2010 13:24:58 +0000 (13:24 +0000)] 
Various minor fixups to make ppc32/64-linux work again following
recent ARM-Linux merge.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10992

15 years agoMake regtests build on arm-linux -- all changes are to do with
Julian Seward [Sat, 2 Jan 2010 10:43:23 +0000 (10:43 +0000)] 
Make regtests build on arm-linux -- all changes are to do with
assembly code for atomic memory modifications.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10991

15 years agoRedo r10971 ("Made sure that C++ compilers do not complain about the
Julian Seward [Sat, 2 Jan 2010 10:41:46 +0000 (10:41 +0000)] 
Redo r10971 ("Made sure that C++ compilers do not complain about the
_VKI_IOC_TYPECHECK() macro") in a way which is easier to understand.
Also, add it for arm-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10990

15 years agoTidy up determination of the PLAT_ macros a bit.
Julian Seward [Sat, 2 Jan 2010 10:37:58 +0000 (10:37 +0000)] 
Tidy up determination of the PLAT_ macros a bit.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10989

15 years agoinitUnwindContext: put back into the loop, some initialisations for
Julian Seward [Fri, 1 Jan 2010 20:56:13 +0000 (20:56 +0000)] 
initUnwindContext: put back into the loop, some initialisations for
ARM which were originally in the loop but inadvertantly got lifted out
during recent merging.  This appears to make stack unwinding work
again on ARM-Linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10988

15 years agoUnbreak stack unwinding on x86-linux and amd64-linux following merge
Julian Seward [Fri, 1 Jan 2010 19:55:17 +0000 (19:55 +0000)] 
Unbreak stack unwinding on x86-linux and amd64-linux following merge
of ARM CFI unwinding in r10986.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10987

15 years agoMake the Dwarf3 CFI stack unwinding machinery work on arm-linux
Julian Seward [Fri, 1 Jan 2010 18:46:41 +0000 (18:46 +0000)] 
Make the Dwarf3 CFI stack unwinding machinery work on arm-linux
too.  This is a first step towards making not be completely
x86/amd64-linux specific, and so replaces some x86/amd64-specific
stuff with more general constructions:

* structure 'DiCfSI', into which the info is summarised, has been
  made target-specific (ugh), since the sets of registers to be
  unwound differ on different targets.

* enum CfiReg and the CFIC_ constants have been expanded
  accordingly, to handle both arm and x86/amd64 registers.

  The abbreviation "IA" (Intel Architecture) has been used in a
  few places where the x86 and amd64 definitions are shared.

* the CFI reader/summariser in readdwarf.c has been expanded &
  generalised appropriately.

* the DiCfSI evaluator in debuginfo.c, VG_(use_CFI_info), has
  also been generalised appropriately.

  The main change is that instead of passing around triples
  of (IP, SP, BP) values, a new structure 'D3UnwindRegs' is
  passed around instead.  This is defined differently for IA and
  ARM and succeeds in hiding at least some of the differences
  where we don't care about them.

  Note also, D3UnwindRegs duplicates, in purpose and structure,
  structure 'RegSummary' in priv_d3basics.h.  This will be tidied
  up in due course.

This commit almost certainly breaks stack unwinding on amd64-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10986

15 years agoMake Callgrind, DRD and Ptrcheck build on arm-linux.
Julian Seward [Fri, 1 Jan 2010 18:31:41 +0000 (18:31 +0000)] 
Make Callgrind, DRD and Ptrcheck build on arm-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10985

15 years agoDon't use -Wdeclaration-after-statement. We long since abandoned any
Julian Seward [Fri, 1 Jan 2010 18:30:59 +0000 (18:30 +0000)] 
Don't use -Wdeclaration-after-statement.  We long since abandoned any
pretense of being buildable with gcc prior to 3.0, hence there's no
point in having this flag.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10984

15 years agon-break build on x86-darwin following r10982.
Julian Seward [Fri, 1 Jan 2010 12:44:12 +0000 (12:44 +0000)] 
n-break build on x86-darwin following r10982.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10983

15 years agoMerge from branches/ARM, all parts of the ARM-Linux port except for
Julian Seward [Fri, 1 Jan 2010 11:59:33 +0000 (11:59 +0000)] 
Merge from branches/ARM, all parts of the ARM-Linux port except for
the changes to do with reading and using ELF and DWARF3 info.
This breaks all targets except amd64-linux and x86-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10982

15 years agoTrack changes in the names of a few IR primops to do with int<->fp
Julian Seward [Thu, 31 Dec 2009 19:24:12 +0000 (19:24 +0000)] 
Track changes in the names of a few IR primops to do with int<->fp
conversions, as introduced in vex r1949.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10980

15 years agoFollow-up for r10972: added missing #include "config.h".
Bart Van Assche [Thu, 31 Dec 2009 13:31:11 +0000 (13:31 +0000)] 
Follow-up for r10972: added missing #include "config.h".

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10978

15 years agoBuilds again on Darwin.
Bart Van Assche [Tue, 29 Dec 2009 17:30:16 +0000 (17:30 +0000)] 
Builds again on Darwin.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10974

15 years agoRemoved dependency of include/pub_tool_basics.h on config.h.
Bart Van Assche [Tue, 29 Dec 2009 16:56:18 +0000 (16:56 +0000)] 
Removed dependency of include/pub_tool_basics.h on config.h.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10972

15 years agoMade sure that C++ compilers do not complain about the _VKI_IOC_TYPECHECK() macro.
Bart Van Assche [Tue, 29 Dec 2009 15:08:14 +0000 (15:08 +0000)] 
Made sure that C++ compilers do not complain about the _VKI_IOC_TYPECHECK() macro.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10971

15 years agoChanges:
Bart Van Assche [Tue, 29 Dec 2009 14:11:38 +0000 (14:11 +0000)] 
Changes:
- Made sure that C++ compilers do not complain about the header files
  include/pub_tool_libcassert.h and include/pub_tool_basics.h.
- Added the source file none/tests/valgrind_cpp_test.cpp. This source file
  is compiled together with the regression tests in order to verify that
  Valgrind's public header files compile cleanly with a C++ compiler.
These modifications are based on a patch provided by Konstantin Serebryany.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10970

15 years agoHandle adjtimex being called in adjtime mode correctly. Closes #219538.
Tom Hughes [Mon, 21 Dec 2009 11:29:54 +0000 (11:29 +0000)] 
Handle adjtimex being called in adjtime mode correctly. Closes #219538.
Validate the constant field with ADJ_TAI is used in an adjtimex call.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10969

15 years agoDocument the 'cc' parameter for OSet creation.
Nicholas Nethercote [Wed, 16 Dec 2009 02:39:39 +0000 (02:39 +0000)] 
Document the 'cc' parameter for OSet creation.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10968

15 years agoCallgrind: fix bug 217849: Switch to running thread in CLG_(post_signal)
Josef Weidendorfer [Thu, 10 Dec 2009 19:26:32 +0000 (19:26 +0000)] 
Callgrind: fix bug 217849: Switch to running thread in CLG_(post_signal)

If instrumentation is switched off on multithreaded code,
multiple signals in a row handled by different threads could
confuse callgrind.
Callgrind assumed that in post_signal, it has the correct understanding
of the currently running thread. This is not always correct.
Really switch to running thread.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10966

15 years agoMade the description of DRD_TRACE_VAR(), ANNOTATE_TRACE_MEMORY() and
Bart Van Assche [Thu, 10 Dec 2009 17:58:46 +0000 (17:58 +0000)] 
Made the description of DRD_TRACE_VAR(), ANNOTATE_TRACE_MEMORY() and
VG_USERREQ__DRD_START_TRACE_ADDR more clear.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10965

15 years agoDouble the size of some table to do with reading CIEs.
Julian Seward [Thu, 3 Dec 2009 14:35:15 +0000 (14:35 +0000)] 
Double the size of some table to do with reading CIEs.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10964

15 years agoCope with prelink splitting the bss section of an ELF file into separate
Tom Hughes [Thu, 3 Dec 2009 09:50:32 +0000 (09:50 +0000)] 
Cope with prelink splitting the bss section of an ELF file into separate
dynbss and bss sections by merging them back together again.

This means that (a) we will find variables in the bss and (b) we won't
assert when there is a debuginfo file present where the bss is still
in one piece.

Patch from Jakub Jelinek, closes #217084.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10963

15 years agoIt seems whoever wrote the preadv and pwritev system calls in the
Tom Hughes [Wed, 2 Dec 2009 16:19:12 +0000 (16:19 +0000)] 
It seems whoever wrote the preadv and pwritev system calls in the
kernel decided it would be fun to make them always take the low word
of the offset argument before the high word regardless of the
endianism of the system... Consistency - they've heard of it...

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10962

15 years agoAdd some newlines to make signal debugging messages more readable.
Tom Hughes [Tue, 1 Dec 2009 10:25:12 +0000 (10:25 +0000)] 
Add some newlines to make signal debugging messages more readable.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10960

15 years agoTrack vex r1930 (Change the IR representation of load linked and store
Julian Seward [Thu, 26 Nov 2009 17:20:21 +0000 (17:20 +0000)] 
Track vex r1930 (Change the IR representation of load linked and store
conditional.)  Completes the fix of #215771.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10957

15 years agoFix type in r10951. Not sure why this didn't cause a compilation
Julian Seward [Wed, 25 Nov 2009 13:57:47 +0000 (13:57 +0000)] 
Fix type in r10951.  Not sure why this didn't cause a compilation
error, but least on ppc32-linux it didn't.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10956

15 years agoAdd support for accept4 system call based on patch
Tom Hughes [Wed, 25 Nov 2009 12:05:41 +0000 (12:05 +0000)] 
Add support for accept4 system call based on patch
from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10955

15 years agoWire up vhangup system call on amd64/ppc32/ppc64 linux platforms.
Tom Hughes [Wed, 25 Nov 2009 11:54:56 +0000 (11:54 +0000)] 
Wire up vhangup system call on amd64/ppc32/ppc64 linux platforms.
Patch from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10954

15 years agoAdd support for fallocate system call on 32 bit (x86/ppc32) linux
Tom Hughes [Wed, 25 Nov 2009 11:51:05 +0000 (11:51 +0000)] 
Add support for fallocate system call on 32 bit (x86/ppc32) linux
systems based on patch from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10953

15 years agoClean up support for sync_file_range system call and add second version used
Tom Hughes [Wed, 25 Nov 2009 11:29:14 +0000 (11:29 +0000)] 
Clean up support for sync_file_range system call and add second version used
by ppc platforms based on patch from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10952

15 years agoRename LOHI64 to MERGE64 and make it work correctly on big endian
Tom Hughes [Wed, 25 Nov 2009 11:24:00 +0000 (11:24 +0000)] 
Rename LOHI64 to MERGE64 and make it work correctly on big endian
platforms. Also add MERGE64_FIRST and MERGE64_SECOND macros to help
produce the right argument names in error messages on big/little
endian platforms.

Based on patch from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10951

15 years agoSplit long lines.
Bart Van Assche [Wed, 25 Nov 2009 07:29:34 +0000 (07:29 +0000)] 
Split long lines.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10950

15 years agoAdded to repository.
Bart Van Assche [Wed, 25 Nov 2009 07:24:07 +0000 (07:24 +0000)] 
Added to repository.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10949

15 years agoRe-enable old support for adjtimex system call based on patch
Tom Hughes [Tue, 24 Nov 2009 16:38:21 +0000 (16:38 +0000)] 
Re-enable old support for adjtimex system call based on patch
from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10948

15 years agoAdd support for rt_tgsigqueueinfo system call based on patch
Tom Hughes [Tue, 24 Nov 2009 16:08:40 +0000 (16:08 +0000)] 
Add support for rt_tgsigqueueinfo system call based on patch
from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10947

15 years agoAdd support for sched_rr_get_interval system call based on patch
Tom Hughes [Tue, 24 Nov 2009 16:03:19 +0000 (16:03 +0000)] 
Add support for sched_rr_get_interval system call based on patch
from Dodji Seketeli. Part fix for #215973.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10946

15 years agoHandle the dup3 system call. Closes #215448.
Tom Hughes [Mon, 23 Nov 2009 08:19:20 +0000 (08:19 +0000)] 
Handle the dup3 system call. Closes #215448.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10945

15 years agoMake sure isIFunc is initialised whenever we add a symbol.
Tom Hughes [Mon, 16 Nov 2009 09:07:07 +0000 (09:07 +0000)] 
Make sure isIFunc is initialised whenever we add a symbol.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10944

15 years agoHandle the isIFunc flag when canonicalising the symbol table.
Tom Hughes [Mon, 16 Nov 2009 09:06:50 +0000 (09:06 +0000)] 
Handle the isIFunc flag when canonicalising the symbol table.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10943

15 years agoAssert that the indirect function wrapper exists if we encounter a
Tom Hughes [Mon, 16 Nov 2009 09:06:09 +0000 (09:06 +0000)] 
Assert that the indirect function wrapper exists if we encounter a
redirection for an indirect function.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10942

15 years agoAdded support for glibc 2.11.
Bart Van Assche [Sun, 15 Nov 2009 19:11:19 +0000 (19:11 +0000)] 
Added support for glibc 2.11.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10941

15 years agoVarious improvements to DWARF handling to cope with changes in recent
Tom Hughes [Thu, 12 Nov 2009 13:28:34 +0000 (13:28 +0000)] 
Various improvements to DWARF handling to cope with changes in recent
versions of gcc as shipped with Fedora 12. Specific changes include:

  - Vastly increase the number of opcodes we understand how to
    evaluate when processing a location expression.

  - Process frame unwind data from the debug_frame ELF section as
    well as the eh_frame section.

  - Handle version 3 CIEs in frame unwind data.

  - Handle the compact form of DW_AT_data_member_location which just
    gives a constant offset from the start of it's base type instead
    of a full location expression.

Based on patches from Jakub Jelinek on bugs #210479 and #210566.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10939

15 years agoFix stack unwinding on PPC to store the correct frame pointer for
Tom Hughes [Thu, 12 Nov 2009 13:19:41 +0000 (13:19 +0000)] 
Fix stack unwinding on PPC to store the correct frame pointer for
frames other than the first one found.

This is taken from Jakub Jelinek's second patch on bug #210479.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10938

15 years agoFixed typo.
Bart Van Assche [Wed, 11 Nov 2009 19:22:05 +0000 (19:22 +0000)] 
Fixed typo.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10937

15 years agoFixed a compiler warning.
Bart Van Assche [Tue, 10 Nov 2009 15:11:30 +0000 (15:11 +0000)] 
Fixed a compiler warning.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10936

15 years agoRemoved a superfluous #include directive.
Bart Van Assche [Tue, 10 Nov 2009 15:10:13 +0000 (15:10 +0000)] 
Removed a superfluous #include directive.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10935

15 years agoUpdated gcc version.
Bart Van Assche [Mon, 9 Nov 2009 17:37:17 +0000 (17:37 +0000)] 
Updated gcc version.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10934

15 years agoAdded configure test for QAtomicInt.
Bart Van Assche [Mon, 9 Nov 2009 16:07:43 +0000 (16:07 +0000)] 
Added configure test for QAtomicInt.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10933

15 years agoAdded a regression test.
Bart Van Assche [Mon, 9 Nov 2009 15:44:53 +0000 (15:44 +0000)] 
Added a regression test.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10932

15 years agoAutomatically clean up temporary files.
Bart Van Assche [Fri, 6 Nov 2009 08:59:34 +0000 (08:59 +0000)] 
Automatically clean up temporary files.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10931

15 years agoNew flag: --trace-children-skip=patt1,patt2,etc
Julian Seward [Thu, 5 Nov 2009 08:55:13 +0000 (08:55 +0000)] 
New flag: --trace-children-skip=patt1,patt2,etc
Specifies a comma-separated list of executable-names
(with "*" and "?" wildcards allowed) that should not be traced into
even when --trace-children=yes.  Modified version of a patch
from Bill Hoffman.  Fixes #148932.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10927

15 years agoCorrectly handle MPI_STATUS{ES}_IGNORE as valid values for
Julian Seward [Thu, 5 Nov 2009 08:43:38 +0000 (08:43 +0000)] 
Correctly handle MPI_STATUS{ES}_IGNORE as valid values for
MPI_Status* arguments (as opposed to segfaulting :-)

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10926

15 years agoRework VG_(memmove) in the case where the destination address is greater
Tom Hughes [Tue, 3 Nov 2009 21:14:31 +0000 (21:14 +0000)] 
Rework VG_(memmove) in the case where the destination address is greater
that the source address to use the same logic as the mc_replace_strmem.c
version so that underflow is avoided. Fixes #211008.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10925

15 years agoSupport pipe2 in exp-ptrcheck. Fixes #212739.
Tom Hughes [Tue, 3 Nov 2009 21:02:16 +0000 (21:02 +0000)] 
Support pipe2 in exp-ptrcheck. Fixes #212739.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10924

15 years agoInitialise the isIFunc flag when adding a hardwired redirection. Fixes #212547.
Tom Hughes [Sun, 1 Nov 2009 16:37:33 +0000 (16:37 +0000)] 
Initialise the isIFunc flag when adding a hardwired redirection. Fixes #212547.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10923

15 years agoMade sure that the sigqueue regression test passes on 32-bit and on 64-bit systems.
Bart Van Assche [Fri, 30 Oct 2009 11:37:35 +0000 (11:37 +0000)] 
Made sure that the sigqueue regression test passes on 32-bit and on 64-bit systems.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10922

15 years agoIf a signal arrives when a thread which has just finished executing a
Tom Hughes [Thu, 29 Oct 2009 14:03:02 +0000 (14:03 +0000)] 
If a signal arrives when a thread which has just finished executing a
system call is between the blksys_committed and blksys_finished markers
in the system call routine then the post handler for the system call
was failing to run.

This commit fixes that by ensuring that the syscall status is recovered
from the guest state before the post VG_(post_syscall) is called just
as VG_(client_syscall) would normally do when the assembly wrapper
returned. Without that VG_(post_syscall) will not do anything a it
will think the system call is still running.

Fixes #212267.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10921

15 years agoAdd support for ELF indirect functions. These are symbols of
Tom Hughes [Thu, 29 Oct 2009 09:27:11 +0000 (09:27 +0000)] 
Add support for ELF indirect functions. These are symbols of
type STT_GNU_IFUNC which, instead of pointing directly at the
function, point at a routine which will return the address of
the real function. Redirection of indirect functions is handled
by valgrind as follows:

  - When a redirection specification matches an indirect
    function symbol an active redirection is added in the
    normal way, but with the isIFunc flag set.

  - When a call is made to an address which matches an
    active redirection with the isIFunc flag set the call
    is redirected, but not to the target address of the
    redirection - instead it is sent to a small wrapper
    routine that is preloaded into the client.

  - The wrapper routine calls the original client routine
    and collects the result, which it reports to valgrind
    using a client request, and then returns the result to
    the caller.

  - When valgrind gets the client request it looks up the
    active redirection for the indirect function and then
    adds a new active redirection which redirects from the
    address returned by the indirection function to the
    redirection target. This new redirection does not have
    the isIFunc flag set so behaves as a normal redirection.

In addition to the above we also add a few new redirections to
memcheck to capture internal calls made by glibc to things like
strlen, as these internal calls do not go through the indirect
function and instead go direct to the chosen implementation.

Based on a patch from Dodji Seketeli and comments from Jakub
Jelinek, this commit closes bug 206013.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10920

15 years agoCompiles again -- added trailing comma's that were missing from r10907.
Bart Van Assche [Thu, 29 Oct 2009 09:01:39 +0000 (09:01 +0000)] 
Compiles again -- added trailing comma's that were missing from r10907.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10919

15 years agoHandle some extra aio opcodes in io_submit and io_getevents.
Tom Hughes [Wed, 28 Oct 2009 16:03:29 +0000 (16:03 +0000)] 
Handle some extra aio opcodes in io_submit and io_getevents.
Based on patch from Gabor Gomas. Fixes #209807.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10918

15 years agoFixed bug #212064.
Bart Van Assche [Wed, 28 Oct 2009 10:15:06 +0000 (10:15 +0000)] 
Fixed bug #212064.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10917

15 years agoFixed expected output.
Bart Van Assche [Wed, 28 Oct 2009 10:13:20 +0000 (10:13 +0000)] 
Fixed expected output.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10916

15 years agoAdded a comment that explains the purpose of the sigqueue.c test program.
Bart Van Assche [Wed, 28 Oct 2009 10:13:03 +0000 (10:13 +0000)] 
Added a comment that explains the purpose of the sigqueue.c test program.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10915

15 years agoAdd support for preadv and pwritev. Fixes #212149.
Tom Hughes [Wed, 28 Oct 2009 10:04:11 +0000 (10:04 +0000)] 
Add support for preadv and pwritev. Fixes #212149.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10914

15 years agoAdd support for some more Intel cache descriptors to stop Core i7 based
Tom Hughes [Wed, 28 Oct 2009 09:21:53 +0000 (09:21 +0000)] 
Add support for some more Intel cache descriptors to stop Core i7 based
systems moaning.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10913

15 years agoWire up inotify_init1 on ppc32-linux.
Tom Hughes [Tue, 27 Oct 2009 21:42:46 +0000 (21:42 +0000)] 
Wire up inotify_init1 on ppc32-linux.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10912

15 years agoEnabled the rt_sigqueueinfo() system call for ppc64.
Bart Van Assche [Tue, 27 Oct 2009 14:55:49 +0000 (14:55 +0000)] 
Enabled the rt_sigqueueinfo() system call for ppc64.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10911

15 years agoAdded a modified version of the rt_sigqueue test program provided by Konstantin Sereb...
Bart Van Assche [Tue, 27 Oct 2009 14:20:23 +0000 (14:20 +0000)] 
Added a modified version of the rt_sigqueue test program provided by Konstantin Serebryany.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10910

15 years agoAdd support for the inotify_init1 system call, based on patches
Tom Hughes [Tue, 27 Oct 2009 14:17:27 +0000 (14:17 +0000)] 
Add support for the inotify_init1 system call, based on patches
from Dodji Seketeli and Jakub Jelinek. Fixes #202315.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10909

15 years agoAdd epoll_ctl, epoll_pwait and epoll_wait to exp-ptrcheck. Fixes #207668.
Tom Hughes [Tue, 27 Oct 2009 09:31:39 +0000 (09:31 +0000)] 
Add epoll_ctl, epoll_pwait and epoll_wait to exp-ptrcheck. Fixes #207668.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10908

15 years agoAdd support for the perf_counter_open system call. Fixes #211498.
Tom Hughes [Tue, 27 Oct 2009 09:19:26 +0000 (09:19 +0000)] 
Add support for the perf_counter_open system call. Fixes #211498.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10907

15 years agoUpdate linux system calls lists to match 2.6.31.5 kernel.
Tom Hughes [Tue, 27 Oct 2009 09:01:43 +0000 (09:01 +0000)] 
Update linux system calls lists to match 2.6.31.5 kernel.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10906

15 years agoRemoved the restriction that the size argument of drd_pre_mem_read_asciiz()
Bart Van Assche [Mon, 26 Oct 2009 16:14:04 +0000 (16:14 +0000)] 
Removed the restriction that the size argument of drd_pre_mem_read_asciiz()
should be less than 4096 bytes. This function is called a.o. for the path
argument of the open() system call. This path can be longer than 4096 bytes.
Should fix bug #211941.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10905

15 years agoFixed an assertion failure triggered by running DRD with the command-line option...
Bart Van Assche [Tue, 20 Oct 2009 18:13:26 +0000 (18:13 +0000)] 
Fixed an assertion failure triggered by running DRD with the command-line option --trace-mutex=yes on a program using one of the ANNOTATE_HAPPENS_*() macros.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10904

15 years agoAllow translations in client allocated shared memory. Fixes #210322.
Tom Hughes [Mon, 12 Oct 2009 13:53:12 +0000 (13:53 +0000)] 
Allow translations in client allocated shared memory. Fixes #210322.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10903

15 years agoRenamed cellbuzz nightly build config files.
Bart Van Assche [Wed, 30 Sep 2009 13:27:58 +0000 (13:27 +0000)] 
Renamed cellbuzz nightly build config files.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10896

15 years agoSwitched from SDK 3.0 to SDK 3.1.
Bart Van Assche [Wed, 30 Sep 2009 13:26:40 +0000 (13:26 +0000)] 
Switched from SDK 3.0 to SDK 3.1.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10895

15 years agoUpdate ignores.
Robert Walsh [Sun, 20 Sep 2009 19:49:31 +0000 (19:49 +0000)] 
Update ignores.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10894

15 years agoUpdate.
Julian Seward [Sun, 13 Sep 2009 22:50:39 +0000 (22:50 +0000)] 
Update.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10888

15 years agoEnable sys_rmdir on ppc64-linux. Fixes #206903.
Julian Seward [Sun, 13 Sep 2009 13:37:16 +0000 (13:37 +0000)] 
Enable sys_rmdir on ppc64-linux.  Fixes #206903.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10887

15 years agoUnmap the vdso as well as suppressing it by dropping the auxv
Tom Hughes [Mon, 7 Sep 2009 08:58:29 +0000 (08:58 +0000)] 
Unmap the vdso as well as suppressing it by dropping the auxv
entry as on some systems the vdso will be at a random address
and can conflict with things like wine that need to tightly
control where things are mapped.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10886

15 years agoSupport AT_EXECFN in the ELF auxv, filling it in with the path of
Tom Hughes [Fri, 4 Sep 2009 13:03:41 +0000 (13:03 +0000)] 
Support AT_EXECFN in the ELF auxv, filling it in with the path of
the client executable valgrind is starting.

Based on a patch from John Reiser.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10885

15 years agoAdd support for AT_BASE_PLATFORM in the ELF auxv.
Tom Hughes [Fri, 4 Sep 2009 12:52:16 +0000 (12:52 +0000)] 
Add support for AT_BASE_PLATFORM in the ELF auxv.
Based on patch from John Reiser.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10884

15 years agoAdd a file to keep track of stuff that we currently can't/don't in
Julian Seward [Thu, 3 Sep 2009 10:45:03 +0000 (10:45 +0000)] 
Add a file to keep track of stuff that we currently can't/don't in
bugzilla.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10883

15 years agoRemove ampersand from tool description string so as not to screw up
Julian Seward [Thu, 3 Sep 2009 10:41:44 +0000 (10:41 +0000)] 
Remove ampersand from tool description string so as not to screw up
XML output.  (Ashley Pittman).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10882

15 years agoFix inconsistent closing of an <hthreadid> tag (Ashley Pittman).
Julian Seward [Thu, 3 Sep 2009 10:29:57 +0000 (10:29 +0000)] 
Fix inconsistent closing of an <hthreadid> tag (Ashley Pittman).

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10881

15 years agoFix another enum type error spotted by gcc-4.5.
Julian Seward [Mon, 31 Aug 2009 08:48:23 +0000 (08:48 +0000)] 
Fix another enum type error spotted by gcc-4.5.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10880

15 years agoAdded a script to the repository for generating a PowerPC cross compiler.
Bart Van Assche [Sat, 29 Aug 2009 11:59:27 +0000 (11:59 +0000)] 
Added a script to the repository for generating a PowerPC cross compiler.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10879

15 years agoAdd support for the L2 cache on Intel T4200.
Julian Seward [Fri, 28 Aug 2009 22:34:09 +0000 (22:34 +0000)] 
Add support for the L2 cache on Intel T4200.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10878