804 Commits

Author SHA1 Message Date
Florian Krohm
dbc0ecfa9f Intercept prctl(PR_SET_NAME, name) and store the thread name so it
can be used in error messages. That should be helpful when debugging
multithreaded applications.
Patch by Matthias Schwarzott <zzam@gentoo.org> with some minor
modifications. Fixes BZ 322254.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13553
2013-09-16 17:08:50 +00:00
Julian Seward
b8a6f9deb9 Update bug status.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13543
2013-09-12 16:02:37 +00:00
Philippe Waroquiers
6e3bb2af58 Fix 324514 gdbserver monitor cmd output behaviour consistency + allow user
to put a "marker" msg in process log output

* v.info n_errs_found accepts optional msg, added in the output of
   the monitor command.

* use VG_(printf) rather than VG_(gdb_printf) when output of command
  should be redirected according to v.set gdb_output|log_output|mixed_output

* also avoid calling gdb_printf in output sink processing
  to output zero bytes, as gdb_printf expects to have a null terminated
  string, which is not ensured when 0 bytes have to be output.

* some minor reformatting (replace char* xxx by char *xxx).




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13532
2013-09-04 21:42:43 +00:00
Florian Krohm
089f1ef803 When XML mode is selected messages from VALGRIND_PRINTF and friends
should go to the XML stream not stderr.  Fixes BZ 322807.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13516
2013-08-27 15:17:53 +00:00
Florian Krohm
6c623bb826 s390: Announce support for DFP. Update the opcode spreadsheet
to reflect this.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13474
2013-07-28 16:19:34 +00:00
Julian Seward
c88dbc357c Update bug status.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13448
2013-07-04 20:49:48 +00:00
Julian Seward
860de63771 Update bug status.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13444
2013-07-03 11:16:31 +00:00
Mark Wielaard
defd29702f Bug 321738 Add manpages for vgdb and valgrind-listener.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13443
2013-07-03 10:00:19 +00:00
Mark Wielaard
7d4cc60c1f Bug 321730 Add cg_merge and cg_diff man pages.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13442
2013-07-03 10:00:17 +00:00
Philippe Waroquiers
2ce4aedfab fix 319235 --db-attach=yes is broken with Yama ptrace scoping enabled
On Ubuntu systems, ptrace_scoping could forbid a process to ptrace another.
This ptrace scoping was already handled for vgdb by using SET_PTRACER
(the valgrind process must be ptraced by vgdb when it is blocked
in a syscall).
set_ptracer is however also needed when the old mechanism --db-attach=yes
is used.
The following changes are done:
* make the set_ptracer logic callable outside gdbserver
* make set_ptracer less restrictive (i.e. allow all
  processes of the user to ptrace). This removes a limitation for vgdb.
* call the set_ptracer in the child launched for --db-attach=yes
* cleaned up the ptrace scope restriction message and doc as vgdb
  is now working properly by default, even with ptrace_scope enabled.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13384
2013-05-09 21:29:23 +00:00
Julian Seward
dc1bed081e Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13366
2013-04-11 16:17:45 +00:00
Mark Wielaard
b81e3c86b6 Fix double 'the the' in documentation.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13363
2013-04-05 13:19:12 +00:00
Julian Seward
a5d07d63fb Update bug status.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13356
2013-04-02 08:24:48 +00:00
Julian Seward
c96c55d600 Update bug status.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13335
2013-03-26 10:12:02 +00:00
Julian Seward
838dae3c46 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13328
2013-03-18 16:05:43 +00:00
Philippe Waroquiers
52b0e470c3 Document that user level client stack switches might cause crashes
and that these crahses might be avoided using VALGRIND_STACK_REGISTER
See bug 316613


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13327
2013-03-13 22:03:31 +00:00
Philippe Waroquiers
0e086ed3b1 Fix 316145 - callgrind command line options in manpage reference (unknown) callgrind manual
Patch by Mark Wielaard.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13324
2013-03-10 16:29:02 +00:00
Philippe Waroquiers
58ceb6c593 Fix 316144 (valgrind.1 manpage contains ??? strings for references)
Patch by Mark Wielaard.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13314
2013-03-06 22:39:18 +00:00
Julian Seward
430a5dd2c8 Moved fixed bugs to the NEWS file.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13309
2013-03-04 11:27:25 +00:00
Julian Seward
518635d2b4 Even more first-pass triage.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13308
2013-03-04 10:41:18 +00:00
Julian Seward
668c7048f1 Even more first-pass triagery.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13307
2013-03-03 22:10:02 +00:00
Julian Seward
4d4e322abf Do some more triagery.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13296
2013-03-01 12:10:33 +00:00
Julian Seward
18fc881c8f Do some triagery.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13295
2013-03-01 09:20:32 +00:00
Julian Seward
75980bfb08 Update bug list.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13293
2013-02-28 09:03:21 +00:00
Philippe Waroquiers
d9a9aa9786 Implement the gdbsrv monitor command v.do expensive_sanity_check_general
(useful to check the sanity of valgrind on request and/or from GDB,
when an error is reported by the tool).
Also re-order the NEWS entries to put the internals things after
the user level new functions.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13262
2013-01-23 22:10:28 +00:00
Philippe Waroquiers
7f42659c6d Add documentation for VALGRIND_MONITOR_COMMAND client request
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13247
2013-01-20 17:46:19 +00:00
Philippe Waroquiers
6fb1158a78 Implement --merge-recursive-frames + provide VALGRIND_MONITOR_COMMAND client req.
In a big applications, some recursive algorithms have created
hundreds of thousands of stacktraces, taking a lot of memory.

Option --merge-recursive-frames=<number> tells Valgrind to
detect and merge (collapse) recursive calls when recording stack traces.
The value is changeable using the monitor command
'v.set merge-recursive-frames'.

Also, this provides a new client request: VALGRIND_MONITOR_COMMAND
allowing to execute a gdbsrv monitor command from the client
program.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13246
2013-01-20 17:11:58 +00:00
Philippe Waroquiers
6bd8cf1eae Addition of GDB server monitor command 'v.info execontext' that shows
information about the stack traces recorded by Valgrind.
This can be used to analyse one possible cause of Valgrind high
memory usage for some programs.

At work, a big set of regression tests crashed out of memory under Valgrind.

Two main causes for out of memory were identified:
1. big memory usage for stacktrace (exe contexts) recording by Valgrind
2. big number of partially initialised bytes.

This patch adds a gdbsrv monitor command that output (very) detailed
information about all the recorded exe context.

This has been used to analyse the problem 1. above,
showing the following identified causes for a (too) big nr of execontexts:

A. When the JIT handles an unknown SP update, even when --track-origins=no,
an execontext is (uselessly) created and recorded
to track the (never used) origin of some uninitialised stack memory.
This creates a whole bunch of 'one IP' execontexts.

B. same problem in handling some system calls (at least the brk system
 calls always records an origin, even when --track-origins=yes).

C. The Valgrind unwinder cannot properly unwind some stack traces.
  It unwinds a few frames, then go bezerk and stops at a "random" IP.
  This then causes the same "logical" stacktrace to be truncated
  and records thousands of times with this "differentiating" last IP.


For problem cause 2 above ( a lot of partially initialised bytes),
the idea is to similarly add another gdbsrv commands that will output
statistics about which stack traces are causing a lot of uninitialised bytes. 




git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13220
2013-01-10 20:42:51 +00:00
Julian Seward
aa139347a2 Update somewhat.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13178
2012-12-13 15:26:53 +00:00
Julian Seward
bb446d67bb Add documentation for --extra-debuginfo-path=. Relates to #310972.
(Alex Chiang, achiang@canonical.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13169
2012-12-07 08:40:16 +00:00
Julian Seward
f192a5574d Make diagnostics for SIGILL more controllable (Valgrind part).
Fixes #309425.  (Mark Wielaard, mjw@redhat.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13164
2012-12-06 18:08:54 +00:00
Florian Krohm
14d5f7e33f Synch opcode list with <binutils>/opcodes/s390-opc.txt.
Fix some opcode categories (user space vs privileged operation)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13158
2012-12-06 05:04:35 +00:00
Julian Seward
29e608d6f9 Update with current bugs.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13155
2012-12-05 23:00:02 +00:00
Florian Krohm
e4f15fd479 Update opcode table: add new insns for zEC12
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13151
2012-12-05 04:21:41 +00:00
Florian Krohm
5ac3ca3774 Update opcode status. Announce fix for BZ #306035.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13147
2012-12-02 21:34:57 +00:00
Philippe Waroquiers
73eaf6f265 Improve FAQ section discussing statically linked lib
Valgrind 3.8.1 can work with statically linked lib or alternative
malloc libs.
Ensure FAQ properly describe this.



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13144
2012-11-28 18:12:57 +00:00
Julian Seward
c2bb7ebab0 Update with latest bugmail header lines.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13083
2012-10-26 10:28:24 +00:00
Philippe Waroquiers
0df0a2725c Fix 308644 vgdb command for having the info for the track-fds option
(allows to have the list of opened fds and the associated info
on request from GDB or from the shell, using vgdb)



git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13072
2012-10-21 14:37:14 +00:00
Julian Seward
21d3562b02 Rough initial triage for bugs that appeared in the past month or so.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13038
2012-10-12 22:49:50 +00:00
Julian Seward
ddbc41e9fb Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13036
2012-10-11 16:57:27 +00:00
Florian Krohm
5a9766c0dd Updates for hfp insns.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12999
2012-09-18 21:15:54 +00:00
Florian Krohm
b792917720 s390: Add testcases for srnm and srnmb. Update opcode status list.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12997
2012-09-18 20:25:23 +00:00
Julian Seward
e154c80dc7 Update for 3.8.1.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12993
2012-09-18 07:03:27 +00:00
Julian Seward
9fe672c880 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12989
2012-09-17 18:20:29 +00:00
Julian Seward
64e5596836 Update.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12978
2012-09-17 08:37:33 +00:00
Philippe Waroquiers
de40d2d22b Mark revision 12964 to be merged in 3.8.1
(this revision fixes some missing files in the release tarball)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12973
2012-09-14 21:18:00 +00:00
Florian Krohm
ba6a657559 Update for s390.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12971
2012-09-14 16:07:37 +00:00
Florian Krohm
f9979eceb1 Adjust the vbit tester to deal with shift operations that require
an immediate constant as the shift amount. This is needed for
powerpc Iop_ShlD64 etc. What it basically means that we do not
iterate over the bits in the 2nd operand because there are no
V-bits to set. An immediate constant is always completely defined.
Fixes bugzilla #305948.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12969
2012-09-13 19:41:12 +00:00
Florian Krohm
70e9281359 Announce bug fix in NEWS.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12959
2012-09-06 03:26:50 +00:00
Florian Krohm
9ff2c07432 Add bugzilla number.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12953
2012-09-03 15:39:19 +00:00