]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
23 years agoioctl TCXONC (Peter A Jonsson)
Julian Seward [Wed, 22 May 2002 12:03:54 +0000 (12:03 +0000)] 
ioctl TCXONC (Peter A Jonsson)

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

23 years agoFix one-char typo relating to detection of XFree86 3.X.
Julian Seward [Wed, 22 May 2002 11:58:25 +0000 (11:58 +0000)] 
Fix one-char typo relating to detection of XFree86 3.X.

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

23 years agoImplement x86 insn popl m32. (Nikolay Igotti )
Julian Seward [Wed, 22 May 2002 11:55:35 +0000 (11:55 +0000)] 
Implement x86 insn  popl m32.  (Nikolay Igotti )

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

23 years ago---> 20020520
Julian Seward [Tue, 21 May 2002 00:54:02 +0000 (00:54 +0000)] 
---> 20020520

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

23 years agoDon't mask libc's vfork / __vfork:
Julian Seward [Tue, 21 May 2002 00:51:21 +0000 (00:51 +0000)] 
Don't mask libc's vfork / __vfork:
   $ nm /lib/libc-2.2.4.so | grep vfork
   000b4220 T __vfork
   000b4220 W vfork

There's no __libc_vfork, so there's nothing we can do here.
Just don't supply our own version.

Not at all sure if this is correct.

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

23 years ago- Fix __NR_poll printing
Julian Seward [Tue, 21 May 2002 00:44:02 +0000 (00:44 +0000)] 
- Fix __NR_poll printing
- Invert the sense of IOC_READ / IOC_WRITE in generic ioctl handler
  (Simon Hausmann)
- TIOCSPGRP (Peter A Jonsson); also add a missing break in the ioctl stuff

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

23 years agoignore some generated stuff
Dirk Mueller [Tue, 21 May 2002 00:10:05 +0000 (00:10 +0000)] 
ignore some generated stuff

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

23 years agofix gcc detection
Dirk Mueller [Tue, 21 May 2002 00:09:48 +0000 (00:09 +0000)] 
fix gcc detection

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

23 years agogcc-3.1 compile fix.
Julian Seward [Tue, 21 May 2002 00:05:10 +0000 (00:05 +0000)] 
gcc-3.1 compile fix.

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

23 years agoMoan but don't die on unhandled stabs cases.
Julian Seward [Mon, 20 May 2002 23:39:22 +0000 (23:39 +0000)] 
Moan but don't die on unhandled stabs cases.

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

23 years agoImprove diagnostic info printed by failures in
Julian Seward [Mon, 20 May 2002 23:38:33 +0000 (23:38 +0000)] 
Improve diagnostic info printed by failures in
VG_(mash_LD_PRELOAD_and_LD_LIBRARY_PATH).

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

23 years ago---> 20020518
Julian Seward [Sun, 19 May 2002 00:14:09 +0000 (00:14 +0000)] 
---> 20020518

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

23 years agoImplement semaphore functions.
Julian Seward [Sun, 19 May 2002 00:13:34 +0000 (00:13 +0000)] 
Implement semaphore functions.

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

23 years agoAdd test from Lionel Ulmer showing incorrect behaviour of overloaded
Julian Seward [Sat, 18 May 2002 19:54:36 +0000 (19:54 +0000)] 
Add test from Lionel Ulmer showing incorrect behaviour of overloaded
new.  Not fixed yet.

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

23 years agoModify cachegrind.in to track recent changes in valgrind.in
Julian Seward [Sat, 18 May 2002 19:52:04 +0000 (19:52 +0000)] 
Modify cachegrind.in to track recent changes in valgrind.in

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

23 years agoAdd getpmsg/putpmsg (Rick Watson)
Julian Seward [Sat, 18 May 2002 13:24:24 +0000 (13:24 +0000)] 
Add getpmsg/putpmsg (Rick Watson)

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

23 years agoFix fork/exec stuff so it works again. We have to mangle LD_LIBRARY_PATH
Julian Seward [Sat, 18 May 2002 13:14:17 +0000 (13:14 +0000)] 
Fix fork/exec stuff so it works again.  We have to mangle LD_LIBRARY_PATH
as well as LD_PRELOAD, so as to make our libpthread.so go out of scope
when a child which we don't want to trace, is exec'd.  Otherwise the
child can wind up being connected to our libpthread.so but not to
valgrind.so, which is an unworkable combination; you have to be connected
to both or neither.

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

23 years agoThe ELF table created by old kernels (2.4.3 ish) is different from
Julian Seward [Sat, 18 May 2002 11:55:05 +0000 (11:55 +0000)] 
The ELF table created by old kernels (2.4.3 ish) is different from
that created by newer 2.4 kernels.  Try and handle that.  (Untested).

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

23 years agoAdd clarification of the purpose of the malloc/free mismatch checks
Julian Seward [Sat, 18 May 2002 11:09:19 +0000 (11:09 +0000)] 
Add clarification of the purpose of the malloc/free mismatch checks
(Pascal Massimino)

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

23 years agoAdd getitimer (Pascal Massimino)
Julian Seward [Sat, 18 May 2002 11:01:06 +0000 (11:01 +0000)] 
Add getitimer (Pascal Massimino)

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

23 years agoCancellation wrappers for pread/pwrite (Philip Martin).
Julian Seward [Sat, 18 May 2002 10:56:27 +0000 (10:56 +0000)] 
Cancellation wrappers for pread/pwrite (Philip Martin).

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

23 years agoAdd a version dependency GLIBC_2.2.3 depends on GLIBC_2.2.
Julian Seward [Sat, 18 May 2002 10:51:25 +0000 (10:51 +0000)] 
Add a version dependency GLIBC_2.2.3 depends on GLIBC_2.2.

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

23 years agoCancellation wrapper for __pwrite64 (Adam Zell(?))
Julian Seward [Sat, 18 May 2002 10:43:22 +0000 (10:43 +0000)] 
Cancellation wrapper for __pwrite64 (Adam Zell(?))
Be more paranoid in pthread_attr_setstacksize

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

23 years ago---> 20020516
Julian Seward [Thu, 16 May 2002 23:42:39 +0000 (23:42 +0000)] 
---> 20020516

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

23 years agoCancellation wrapper for pread64.
Julian Seward [Thu, 16 May 2002 23:39:10 +0000 (23:39 +0000)] 
Cancellation wrapper for pread64.

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

23 years agoAdd a test for semaphore facilities: the Dining Philosophers, no less.
Julian Seward [Thu, 16 May 2002 23:30:25 +0000 (23:30 +0000)] 
Add a test for semaphore facilities: the Dining Philosophers, no less.

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

23 years agostringMatch_wrk: reduce max recursion depth to 250 (paranoia)
Julian Seward [Thu, 16 May 2002 23:16:13 +0000 (23:16 +0000)] 
stringMatch_wrk: reduce max recursion depth to 250 (paranoia)

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

23 years agoFix this for RH 7.3.
Julian Seward [Thu, 16 May 2002 20:57:26 +0000 (20:57 +0000)] 
Fix this for RH 7.3.

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

23 years agoMinimal impl of pthread_attr_setstacksize.
Julian Seward [Thu, 16 May 2002 20:51:15 +0000 (20:51 +0000)] 
Minimal impl of pthread_attr_setstacksize.

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

23 years agoCancellation wrapper for sendmsg(), wierd wrapper for raise().
Julian Seward [Thu, 16 May 2002 16:57:25 +0000 (16:57 +0000)] 
Cancellation wrapper for sendmsg(), wierd wrapper for raise().

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

23 years agoAdd some more recent tests.
Julian Seward [Thu, 16 May 2002 11:18:05 +0000 (11:18 +0000)] 
Add some more recent tests.

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

23 years agoRemove existing non-working support for self-modifying code, and instead
Julian Seward [Thu, 16 May 2002 11:06:21 +0000 (11:06 +0000)] 
Remove existing non-working support for self-modifying code, and instead
add a simple compromise, in which the client can notify valgrind
that certain code address ranges are invalid and should be retranslated.
This is done using the VALGRIND_DISCARD_TRANSLATIONS macro in valgrind.h.

At the same time take the opportunity to close the potentially fatal
loophole that translations for executable segments were not being
discarded when those segments were munmapped.  They are now.

Documentation updated.

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

23 years ago---> 20020515
Julian Seward [Wed, 15 May 2002 22:26:37 +0000 (22:26 +0000)] 
---> 20020515

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

23 years agoMore new-signal-hacks fixes.
Julian Seward [Wed, 15 May 2002 22:25:47 +0000 (22:25 +0000)] 
More new-signal-hacks fixes.

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

23 years agoIn accordance with "build one to throw away, you will anyway (tm)",
Julian Seward [Wed, 15 May 2002 21:13:39 +0000 (21:13 +0000)] 
In accordance with "build one to throw away, you will anyway (tm)",
throw away the old signals simulation and more or less start again
from scratch.  vg_signals.c is nearly a complete rewrite.  In fact
this is now the third generation of the signals simulation.

The purpose of this is to properly support signals in threads -- a
nightmare combination.  pthread_sigmask, pthread_kill and sigwait
are now alledged to work as POSIX requires.

In the process, throw away confusing and conceptually muddled old
implementation and replace with something which is more verbose but
conceptually cleaner, simpler and easier to argue is correct.

* When the client does sigaction/sigprocmask et al, the resulting
  changes are stored verbatim in SCSS -- the Static Client Signal State.
  So SCSS is the state the client believes the kernel is in.

* Every time SCSS changes, we recalculate the state the kernel
  *should* be in so that our signal simulation works.  This is the
  SKSS -- Static Kernel Signal State.  The kernel state is then
  updated accordingly.  By diffing the new and old SKSSs, the
  number of real system calls made is minimised.

* The dynamic state of the client's signals is stored in DCSS
  -- Dynamic Client Signal State.  This just records which signals
  are pending for which threads.

The big advantage of this scheme over the previous is that the SCSS ->
SKSS mapping is made explicit and gathered all in one place, rather
than spread out in a confusing way and done implicitly.  That makes it
all lot easier to decide if the mapping, which is really the heart of
the signals simulation, is correct or not.

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

23 years agoFix incredibly stupid bug.
Nicholas Nethercote [Wed, 15 May 2002 14:30:55 +0000 (14:30 +0000)] 
Fix incredibly stupid bug.

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

23 years agoExpanded --sort option to take threshold args with the event names. Lets you
Nicholas Nethercote [Mon, 13 May 2002 20:27:54 +0000 (20:27 +0000)] 
Expanded --sort option to take threshold args with the event names.  Lets you
do things like "show functions covering 99% of all D2mr events *and* 99% of all
D2mw events" - before you could only choose the threshold for one.

Useful for me, but probably no-one else.  Still mentioned it in the docs,
though.

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

23 years agoUse $(srcdir) to specify the location of the linker script
Frédéric Gobry [Mon, 13 May 2002 07:50:45 +0000 (07:50 +0000)] 
Use $(srcdir) to specify the location of the linker script

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

23 years agoAdd another threads+signals test case along with the fix to make it work.
Julian Seward [Mon, 13 May 2002 00:38:52 +0000 (00:38 +0000)] 
Add another threads+signals test case along with the fix to make it work.

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

23 years agoAdd support for pthread_sigmask() and sigwait(). All absolutely
Julian Seward [Mon, 13 May 2002 00:16:03 +0000 (00:16 +0000)] 
Add support for pthread_sigmask() and sigwait().  All absolutely
horrible, especially the latter.

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

23 years agoFix spelling mistake: wierd*hacks --> weird*hacks
Julian Seward [Sun, 12 May 2002 10:52:16 +0000 (10:52 +0000)] 
Fix spelling mistake: wierd*hacks --> weird*hacks
Also add a testcase.

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

23 years agoIn order to catch timeout events on fds which are readable and which
Julian Seward [Sun, 12 May 2002 03:00:17 +0000 (03:00 +0000)] 
In order to catch timeout events on fds which are readable and which
have been ioctl(TCSETA)'d with a VTIMEout, we appear to need to ask if
the fd is writable, for some reason.  Ask me not why.  Since this is
strange and potentially troublesome we only do it if the user asks
specially, by specifying --wierd-hacks=ioctl-VTIME.

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

23 years ago---> 20020511
Julian Seward [Fri, 10 May 2002 23:21:25 +0000 (23:21 +0000)] 
---> 20020511

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

23 years agoHook libpthread.so's .init section to start up Valgrind too.
Julian Seward [Fri, 10 May 2002 23:20:58 +0000 (23:20 +0000)] 
Hook libpthread.so's .init section to start up Valgrind too.

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

23 years agoImplement syslog() (Bill Nottingham)
Julian Seward [Fri, 10 May 2002 22:58:14 +0000 (22:58 +0000)] 
Implement syslog()  (Bill Nottingham)

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

23 years agoEven more shmctl fixings from Reuben.
Julian Seward [Fri, 10 May 2002 22:51:26 +0000 (22:51 +0000)] 
Even more shmctl fixings from Reuben.

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

23 years agoKernel 2.4 / glibc 2.2.X build fixes for recent startup changes.
Julian Seward [Fri, 10 May 2002 22:31:40 +0000 (22:31 +0000)] 
Kernel 2.4 / glibc 2.2.X build fixes for recent startup changes.

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

23 years agoNew and hopefully more reliable method for finding argc/argv/envp at
Julian Seward [Fri, 10 May 2002 21:07:22 +0000 (21:07 +0000)] 
New and hopefully more reliable method for finding argc/argv/envp at
startup, by looking for the ELF frame created on the process' stack
at startup.  This avoids having to deal with problems caused by glibc
magic offsets.

WARNING: only works for 2.2 kernels right now.  2.4 is broken.

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

23 years agoModify the startup mechanism so that any call into valgrind's libpthread.so
Julian Seward [Fri, 10 May 2002 21:03:56 +0000 (21:03 +0000)] 
Modify the startup mechanism so that any call into valgrind's libpthread.so
will start up valgrind if it is not already running.  This more or less
sidesteps the problem that sometimes valgrind.so isn't init'd first by
the dynamic linker.

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

23 years agoImplement __NR_personality.
Julian Seward [Fri, 10 May 2002 21:01:34 +0000 (21:01 +0000)] 
Implement __NR_personality.

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

23 years agoSupport _m_kind == PTHREAD_MUTEX_FAST_NP for mutexes. This was stopping
Julian Seward [Fri, 10 May 2002 21:00:19 +0000 (21:00 +0000)] 
Support _m_kind == PTHREAD_MUTEX_FAST_NP for mutexes.  This was stopping
mutexes working properly on Red Hat 6.2.

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

23 years agoFix confusing bug in printing of trace info for mutex_{try}lock.
Julian Seward [Fri, 10 May 2002 20:26:37 +0000 (20:26 +0000)] 
Fix confusing bug in printing of trace info for mutex_{try}lock.
Add a couple of other handy debug printings.

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

23 years agoInsert hacks, only partially successful, to make 'make distcheck' work
Julian Seward [Fri, 10 May 2002 03:03:57 +0000 (03:03 +0000)] 
Insert hacks, only partially successful, to make 'make distcheck' work
with the new vg_libpthread.vs linker script.  Problem is that builds
where builddir != srcdir don't work now.  Don't know how to fix.

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

23 years ago---> 20020510
Julian Seward [Fri, 10 May 2002 02:36:18 +0000 (02:36 +0000)] 
---> 20020510

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

23 years agoReturn zero to the *parent* thread when pthread_create succeeds.
Julian Seward [Fri, 10 May 2002 02:16:19 +0000 (02:16 +0000)] 
Return zero to the *parent* thread when pthread_create succeeds.
Only showed up on Red Hat 6.2.  Dunno how pth_create ever worked before.

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

23 years agoMore symbol versioning stuff
Julian Seward [Fri, 10 May 2002 01:52:58 +0000 (01:52 +0000)] 
More symbol versioning stuff

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

23 years agoAdd a version script so as to create the right versioned symbols for
Julian Seward [Fri, 10 May 2002 01:42:33 +0000 (01:42 +0000)] 
Add a version script so as to create the right versioned symbols for
libpthread.so.

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

23 years agoBuild fixes for Red Hat 6.2.
Julian Seward [Fri, 10 May 2002 00:46:59 +0000 (00:46 +0000)] 
Build fixes for Red Hat 6.2.

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

23 years agoMore IOCTL futzing from Reuben Thomas.
Julian Seward [Thu, 9 May 2002 18:40:45 +0000 (18:40 +0000)] 
More IOCTL futzing from Reuben Thomas.

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

23 years agoMinor ioctl fixes from Reuben Thomas.
Julian Seward [Thu, 9 May 2002 17:56:57 +0000 (17:56 +0000)] 
Minor ioctl fixes from Reuben Thomas.

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

23 years agoMake sense of, and clean up, shmctl wrapper. (Reuben Thomas).
Julian Seward [Thu, 9 May 2002 17:45:06 +0000 (17:45 +0000)] 
Make sense of, and clean up, shmctl wrapper.  (Reuben Thomas).

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

23 years agoRemove valgrind's use of libc-supplied stat() and sbrk(). Now the only
Julian Seward [Thu, 9 May 2002 17:38:13 +0000 (17:38 +0000)] 
Remove valgrind's use of libc-supplied stat() and sbrk().  Now the only
sysbols we need from libc are __umoddi3 and __udivdi3 ; other than that
valgrind.so is completely self-contained.

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

23 years agoMinor corrections about cache profiling cost centres.
Nicholas Nethercote [Thu, 9 May 2002 15:43:33 +0000 (15:43 +0000)] 
Minor corrections about cache profiling cost centres.

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

23 years agoReinstate a condition in the IPCOP_shmctl wrapper without which the
Julian Seward [Thu, 9 May 2002 12:01:14 +0000 (12:01 +0000)] 
Reinstate a condition in the IPCOP_shmctl wrapper without which the
system dies to the recently-rejuvenated
first-and-last-secondaries-look-plausible assertions around syscalls.

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

23 years agoFix assertions.
Julian Seward [Thu, 9 May 2002 11:03:57 +0000 (11:03 +0000)] 
Fix assertions.

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

23 years ago---> 20020509
Julian Seward [Thu, 9 May 2002 02:38:18 +0000 (02:38 +0000)] 
---> 20020509

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

23 years agoFix off-by-one error in definition of MAX_LINENO and MAX_LOC_SIZE.
Julian Seward [Thu, 9 May 2002 01:32:57 +0000 (01:32 +0000)] 
Fix off-by-one error in definition of MAX_LINENO and MAX_LOC_SIZE.

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

23 years agoYesterday's push/pop merging optimisations break the cache profiler:
Julian Seward [Wed, 8 May 2002 21:26:01 +0000 (21:26 +0000)] 
Yesterday's push/pop merging optimisations break the cache profiler:
    vg_cachesim.c:536 (vgPlain_cachesim_instrument):
    Assertion `instr_size >= 1 && instr_size <= 16' failed.
so disable them when cache profiling.

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

23 years agoChange _pthread_cleanup_push and _pthread_cleanup_pop into no-ops
Julian Seward [Wed, 8 May 2002 14:08:22 +0000 (14:08 +0000)] 
Change _pthread_cleanup_push and _pthread_cleanup_pop into no-ops
rather than aborts.

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

23 years agoDo __pthread_initialize.
Julian Seward [Wed, 8 May 2002 02:01:14 +0000 (02:01 +0000)] 
Do __pthread_initialize.

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

23 years agoComplain about NVidia's libGL.so also when an 0x8C opcode is encountered.
Julian Seward [Wed, 8 May 2002 01:58:18 +0000 (01:58 +0000)] 
Complain about NVidia's libGL.so also when an 0x8C opcode is encountered.

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

23 years agoImplement SBB Ib, AL.
Julian Seward [Wed, 8 May 2002 01:44:03 +0000 (01:44 +0000)] 
Implement SBB Ib, AL.

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

23 years agoDo LODSW / LODSL. (Sami Farin)
Julian Seward [Wed, 8 May 2002 01:38:43 +0000 (01:38 +0000)] 
Do LODSW / LODSL.  (Sami Farin)

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

23 years agoMore shmctl() fixes. (Helge Deller)
Julian Seward [Wed, 8 May 2002 01:31:15 +0000 (01:31 +0000)] 
More shmctl() fixes. (Helge Deller)

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

23 years ago--> 20020508
Julian Seward [Wed, 8 May 2002 01:29:53 +0000 (01:29 +0000)] 
--> 20020508

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

23 years agoOnly show the giant-basic-block message at verbosity >= 2.
Julian Seward [Wed, 8 May 2002 00:42:25 +0000 (00:42 +0000)] 
Only show the giant-basic-block message at verbosity >= 2.

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

23 years agoImprovements to the error-collecting machinery:
Julian Seward [Wed, 8 May 2002 00:32:50 +0000 (00:32 +0000)] 
Improvements to the error-collecting machinery:

- Don't waste a potentially huge amount of time calling describe_addr
  on addresses in errors we aren't going to show.

- If an invalid address is just below %ESP, say that it might be due
  to a gcc bug.  Increase the window in which this is allowed to
  1024 bytes below %ESP.

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

23 years agoActually call VG_(first_and_last_secondaries_look_plausible) and make
Julian Seward [Tue, 7 May 2002 23:45:03 +0000 (23:45 +0000)] 
Actually call VG_(first_and_last_secondaries_look_plausible) and make
assertions about the return value, rather than asserting the
non-NULL-ness of the function's address :) Classic beginner's mistake,
compounded by C's crappy (non-existent) type system, which allows me
to silently confuse Bool with Pointer-to-Function.  What a great
programming language.  Come back Haskell, all is forgiven.

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

23 years agoGenerate better ucode for back-to-back sequences of register pushes and
Julian Seward [Tue, 7 May 2002 23:38:30 +0000 (23:38 +0000)] 
Generate better ucode for back-to-back sequences of register pushes and
pops, as appear at function prologues/epilogues.  Specifically, update %ESP
just once for the whole sequence.  This reduces by about 20% the number
of calls to handle_esp_assignment (for kate in KDE 3.0, -O), which is a
good thing since that is quite expensive.

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

23 years agovg_symtab2.c:
Nicholas Nethercote [Tue, 7 May 2002 10:26:57 +0000 (10:26 +0000)] 
vg_symtab2.c:
    - No longer aborting when encountering a N_SOL symbol after the 65535th
      line in a file, just printing a warning/apology that annotations/messages
      might be wrong.

      This is a pain to fix properly, since it requires first guessing when a
      line number overflow happens, then switching to one or more other files,
      then switching back.

manual: wibble

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

23 years agoMinor profiling improvements. Add a couple of cost centers.
Julian Seward [Tue, 7 May 2002 09:25:30 +0000 (09:25 +0000)] 
Minor profiling improvements.  Add a couple of cost centers.

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

23 years ago---> 20020305b
Julian Seward [Sat, 4 May 2002 19:49:49 +0000 (19:49 +0000)] 
---> 20020305b

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

23 years agoFix from Lionel Ulmer to not have an infinite loop/stack overflow
Julian Seward [Sat, 4 May 2002 19:49:21 +0000 (19:49 +0000)] 
Fix from Lionel Ulmer to not have an infinite loop/stack overflow
with sigaction on glibc 2.1.3.

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

23 years agoFix really stupid use of uninitialised value introduced in rev 1.8.
Julian Seward [Sat, 4 May 2002 12:59:03 +0000 (12:59 +0000)] 
Fix really stupid use of uninitialised value introduced in rev 1.8.
Basically this bug invalidates all snapshots from 0501 until now.

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

23 years agoglibc 2.1.3 compile fixes (Lionel Ulmer).
Julian Seward [Sat, 4 May 2002 10:28:17 +0000 (10:28 +0000)] 
glibc 2.1.3 compile fixes (Lionel Ulmer).

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

23 years agoExternal namespace cleanup.
Julian Seward [Fri, 3 May 2002 22:29:04 +0000 (22:29 +0000)] 
External namespace cleanup.

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

23 years ago---> 20020503
Julian Seward [Fri, 3 May 2002 21:29:55 +0000 (21:29 +0000)] 
---> 20020503

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

23 years agoImplement sched_setparam(), sched_getparam() and sched_yield()
Julian Seward [Fri, 3 May 2002 21:18:11 +0000 (21:18 +0000)] 
Implement sched_setparam(), sched_getparam() and sched_yield()
(Helge Deller)

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

23 years agoImplement chroot(). (Paul Fox)
Julian Seward [Fri, 3 May 2002 21:07:55 +0000 (21:07 +0000)] 
Implement chroot().  (Paul Fox)

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

23 years agoFrom: Tom Hughes <thh@i'm sure he doesn't want to be spammed.com>
Julian Seward [Fri, 3 May 2002 21:01:35 +0000 (21:01 +0000)] 
From: Tom Hughes <thh@i'm sure he doesn't want to be spammed.com>

The attached patch improves the validation done on sockaddr structures
passed to systems calls by extending the existing code for AF_UNIX to
cover AF_INET and AF_INET6 as well so that errors are not raised when
an unused part of the sockaddr structure is not filled in.

It also applies this new code to bind and sendto as well as connect.

Tom

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

23 years agoImprove accuracy of simulation of bsf/bsr instructions when the word
Julian Seward [Fri, 3 May 2002 20:52:53 +0000 (20:52 +0000)] 
Improve accuracy of simulation of bsf/bsr instructions when the word
being scanned is zero.  (Zoltan Hidvegi)

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

23 years agoVarious cleanups following earlier exit fixes. Also add boilerplate
Julian Seward [Fri, 3 May 2002 20:43:10 +0000 (20:43 +0000)] 
Various cleanups following earlier exit fixes.  Also add boilerplate
copyright notices.

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

23 years agoChange the way Valgrind exits.
Julian Seward [Fri, 3 May 2002 19:09:05 +0000 (19:09 +0000)] 
Change the way Valgrind exits.

Until now, valgrind waited for ld.so to call the .fini code in
valgrind.so, and took this as its cue to switch back to the real CPU
for the rest of the journey.

This is a problem if ld.so subsequently calls other .so's .fini code
and threading is in use, because they do pthread_* calls which cannot
be handled by valgrind's libpthread.so without valgrind actually being
active.

So we ignore the call to valgrind's .fini code, and run the program
all the way up to the point where it calls syscall exit() to
disappear.  This makes the order in which the .fini sections are run
irrelevant, since Valgrind has control during all of them, and so
threading facilities are still available for all of them.

This change means Mozilla 1.0RC1 now exits a lot more cleanly than it
did.

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

23 years agoReduce TT size to 32M (was 40M for Mozilla's benefit). 40 M is just
Julian Seward [Fri, 3 May 2002 18:59:21 +0000 (18:59 +0000)] 
Reduce TT size to 32M (was 40M for Mozilla's benefit).  40 M is just
ridiculous overkill for most "normal" apps.

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

23 years agoRemoved description of cachegrind.out file format, since it's now in the tech
Nicholas Nethercote [Fri, 3 May 2002 17:54:51 +0000 (17:54 +0000)] 
Removed description of cachegrind.out file format, since it's now in the tech
docs.

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

23 years agoAdded section to tech docs on how cachegrind works, including the
Nicholas Nethercote [Fri, 3 May 2002 17:51:10 +0000 (17:51 +0000)] 
Added section to tech docs on how cachegrind works, including the
cachegrind.out file format.

Tiny change in user manual.

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

23 years agovg_symtab2.c:
Nicholas Nethercote [Fri, 3 May 2002 16:41:05 +0000 (16:41 +0000)] 
vg_symtab2.c:
    - Can now handle file sizes > 65536 lines, despite the stabs format only
      storing line numbers in a short.  Do this heuristically, by looking for
      line number sequences that go from 65000-odd to 0-odd within the same
      file.

      This required changing the RiLoc.lineno field to 20 bytes, which gives a
      maximum file length of 1,000,000-odd lines, whichs seems reasonable.

      In order to keep RiLoc at 12 bytes (important because there are lots of
      them) this required stealing four bits from the RiLoc.size field,
      reducing it to 12 bits.  This isn't too bad because the size is unlikely
      to be larger than 4096 bytes -- we were already ignoring any ones larger
      than 10,000 bytes because they were suspicious anyway (and see next
      point).

    - Tightened up the sanity checking on line address ranges.  Previously any
      range that looked suspicious (eg. > 10000 bytes, or not within the bound
      of the segment info) was simply ignored(!)  Now it prints a warning when
      this happens and truncates the size to 1 to be safe;  also there are some
      extra assertions for totally space-cadet numbers.

      (At first these checks were all assertions, but I tried a version of GNU
      gas that produces a small handful of dodgy stabs entries;  warnings
      seemed a reasonable compromise.)

vg_cachesim.c:
    - Removed the requirement that both types of cost centre (iCC, idCC) have
      instr_addr as their second word.  Less fragile -- now the only
      requirement is that they both have their type tag as their first byte.

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

23 years agoAdded "L2 refs line" (an oversight).
Nicholas Nethercote [Thu, 2 May 2002 13:56:34 +0000 (13:56 +0000)] 
Added "L2 refs line" (an oversight).
Fixed minor output summary spacing wibble.

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

23 years agoRemove comments about Mozilla 1.0RC1 crashing, since that's not a Valgrind
Julian Seward [Thu, 2 May 2002 03:57:00 +0000 (03:57 +0000)] 
Remove comments about Mozilla 1.0RC1 crashing, since that's not a Valgrind
bug, and explain, for the benefit of Mozilla hackers, how to make 1.0RC1
work on Valgrind.

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

23 years ago---> 20020502
Julian Seward [Thu, 2 May 2002 03:47:32 +0000 (03:47 +0000)] 
---> 20020502

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