]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
23 years agoRemove historical artefact.
Julian Seward [Sun, 2 Jun 2002 00:21:08 +0000 (00:21 +0000)] 
Remove historical artefact.

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

23 years agoImplement __NR_mlock (Marc Mutz <mutz@kde.org>)
Julian Seward [Sun, 2 Jun 2002 00:10:41 +0000 (00:10 +0000)] 
Implement __NR_mlock (Marc Mutz <mutz@kde.org>)

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

23 years agoImplement CLC and STC (Pascal Massimino <pmassimi@ilog.fr>).
Julian Seward [Sun, 2 Jun 2002 00:04:00 +0000 (00:04 +0000)] 
Implement CLC and STC (Pascal Massimino <pmassimi@ilog.fr>).

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

23 years agoMarkup bug.
Julian Seward [Sat, 1 Jun 2002 23:56:38 +0000 (23:56 +0000)] 
Markup bug.

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

23 years agoAdd ioctl BLKGETSIZE.
Julian Seward [Sat, 1 Jun 2002 23:53:10 +0000 (23:53 +0000)] 
Add ioctl BLKGETSIZE.

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

23 years agoUpdate author attributions.
Julian Seward [Sat, 1 Jun 2002 23:43:49 +0000 (23:43 +0000)] 
Update author attributions.

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

23 years agoClean up and modularise debug info reading a little. The stabs and
Julian Seward [Sat, 1 Jun 2002 23:11:19 +0000 (23:11 +0000)] 
Clean up and modularise debug info reading a little.  The stabs and
dwarf2 readers are now in seperate procedures.

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

23 years ago---> 20020601
Julian Seward [Sat, 1 Jun 2002 14:29:49 +0000 (14:29 +0000)] 
---> 20020601

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

23 years agoPreliminary commit of DWARF2 debug info reader from
Julian Seward [Sat, 1 Jun 2002 14:21:36 +0000 (14:21 +0000)] 
Preliminary commit of DWARF2 debug info reader from
Daniel Berlin <dberlin@dberlin.org>

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

23 years agoRemove old rwlock implementation and replace with home-grown one.
Julian Seward [Sat, 1 Jun 2002 14:14:19 +0000 (14:14 +0000)] 
Remove old rwlock implementation and replace with home-grown one.

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

23 years agodemangle_number: handle base-36 numbers.
Julian Seward [Thu, 30 May 2002 01:22:20 +0000 (01:22 +0000)] 
demangle_number: handle base-36 numbers.

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

23 years agoAdd a TODO entry for valgrind-1.0.
Julian Seward [Thu, 30 May 2002 00:40:55 +0000 (00:40 +0000)] 
Add a TODO entry for valgrind-1.0.

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

23 years agoImplement __pthread_kill_other_threads_np properly. It does seem to
Julian Seward [Thu, 30 May 2002 00:40:03 +0000 (00:40 +0000)] 
Implement __pthread_kill_other_threads_np properly.  It does seem to
be needed after all.

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

23 years agoMore X suppressions.
Julian Seward [Thu, 30 May 2002 00:09:52 +0000 (00:09 +0000)] 
More X suppressions.

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

23 years agoImplement ADC Eb,Gb. Truly an unpopular instruction if it took anyone this
Julian Seward [Wed, 29 May 2002 23:38:23 +0000 (23:38 +0000)] 
Implement ADC Eb,Gb.  Truly an unpopular instruction if it took anyone this
long to fall across it.

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

23 years agoChange counts a bit so as not to spew out so much junk.
Julian Seward [Wed, 29 May 2002 23:34:32 +0000 (23:34 +0000)] 
Change counts a bit so as not to spew out so much junk.

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

23 years agoFix stupid copy-n-paste bug in do_set_canceltype causing strange stack
Julian Seward [Wed, 29 May 2002 23:30:28 +0000 (23:30 +0000)] 
Fix stupid copy-n-paste bug in do_set_canceltype causing strange stack
drift problems.

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

23 years agoTests for cancellation/cleanup mechanisms.
Julian Seward [Wed, 29 May 2002 20:47:19 +0000 (20:47 +0000)] 
Tests for cancellation/cleanup mechanisms.

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

23 years agoUpdate TODO lists at the top of the file.
Julian Seward [Wed, 29 May 2002 20:23:26 +0000 (20:23 +0000)] 
Update TODO lists at the top of the file.

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

23 years agoMake __pthread_kill_other_threads_np be UNIMPLEMENTED. If it turns out
Julian Seward [Wed, 29 May 2002 20:22:17 +0000 (20:22 +0000)] 
Make __pthread_kill_other_threads_np be UNIMPLEMENTED.  If it turns out
to be needed, I'll fix it properly.

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

23 years agopthread_cond_timedwait: be robust to timeout points in the past
Julian Seward [Wed, 29 May 2002 20:13:53 +0000 (20:13 +0000)] 
pthread_cond_timedwait: be robust to timeout points in the past

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

23 years agoAs per POSIX, nuke all threads other than me
Julian Seward [Wed, 29 May 2002 19:26:32 +0000 (19:26 +0000)] 
As per POSIX, nuke all threads other than me
- just before __NR_exec()
- just after __NR_fork() when I am the child
This makes OpenOffice 1.0 not have mutex-related assertion failures

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

23 years agoSet client mem permissions in do__cleanup_pop.
Julian Seward [Wed, 29 May 2002 16:48:44 +0000 (16:48 +0000)] 
Set client mem permissions in do__cleanup_pop.

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

23 years agoCheck for pending cancellation requests at syscalls which POSIX
Julian Seward [Wed, 29 May 2002 01:21:19 +0000 (01:21 +0000)] 
Check for pending cancellation requests at syscalls which POSIX
defines to be cancellation points.

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

23 years agoWhen a thread exits, run the destructors for the thread's specific data.
Julian Seward [Wed, 29 May 2002 01:06:47 +0000 (01:06 +0000)] 
When a thread exits, run the destructors for the thread's specific data.

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

23 years agoImplement thread cleanup stacks.
Julian Seward [Wed, 29 May 2002 00:10:20 +0000 (00:10 +0000)] 
Implement thread cleanup stacks.

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

23 years agoIncrease thread scheduling quantum from 20000 bbs to 50000 bbs.
Julian Seward [Tue, 28 May 2002 11:27:31 +0000 (11:27 +0000)] 
Increase thread scheduling quantum from 20000 bbs to 50000 bbs.

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

23 years agoFix various problems with new thread start / stop / detach stuff.
Julian Seward [Tue, 28 May 2002 11:00:01 +0000 (11:00 +0000)] 
Fix various problems with new thread start / stop / detach stuff.

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

23 years agoDO NOT UPDATE! COMPILES BUT DOESN'T WORK.
Julian Seward [Tue, 28 May 2002 01:36:45 +0000 (01:36 +0000)] 
DO NOT UPDATE!  COMPILES BUT DOESN'T WORK.

Major overhaul to the way thread startup and exit is done.  Removes some
ugly gunk in the scheduler, and adds support for thread detaching and
cancellation.

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

23 years agoSupport for POSIX reader-writer locks (preliminary).
Julian Seward [Mon, 27 May 2002 13:00:05 +0000 (13:00 +0000)] 
Support for POSIX reader-writer locks (preliminary).

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

23 years agoAvoid make_readable ( NULL, ... ) in ioctl SIOCGIFCONF.
Julian Seward [Fri, 24 May 2002 11:57:36 +0000 (11:57 +0000)] 
Avoid make_readable ( NULL, ... ) in ioctl SIOCGIFCONF.

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

23 years agoComment out debug printing.
Julian Seward [Fri, 24 May 2002 02:12:52 +0000 (02:12 +0000)] 
Comment out debug printing.

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

23 years ago---> 20020524
Julian Seward [Fri, 24 May 2002 02:11:52 +0000 (02:11 +0000)] 
---> 20020524

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

23 years agoMore minor fixes to make OpenOffice 1.0 work.
Julian Seward [Fri, 24 May 2002 02:11:32 +0000 (02:11 +0000)] 
More minor fixes to make OpenOffice 1.0 work.

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

23 years agoMake syscall sched_yield just yield the current thread rather than the
Julian Seward [Fri, 24 May 2002 00:11:16 +0000 (00:11 +0000)] 
Make syscall sched_yield just yield the current thread rather than the
whole process.

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

23 years agoComment-only change: add a list of known problems with the signal simulator.
Julian Seward [Fri, 24 May 2002 00:00:59 +0000 (00:00 +0000)] 
Comment-only change: add a list of known problems with the signal simulator.

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

23 years agoDebug message wibble.
Julian Seward [Thu, 23 May 2002 17:34:49 +0000 (17:34 +0000)] 
Debug message wibble.

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

23 years agoDon't complain the second arg of __NR_setitimer
Julian Seward [Thu, 23 May 2002 17:14:54 +0000 (17:14 +0000)] 
Don't complain the second arg of __NR_setitimer
(const struct itimerval *value) is NULL.

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

23 years agoFix small bug causing assertion failure in computation of SKSS.
Julian Seward [Thu, 23 May 2002 17:09:43 +0000 (17:09 +0000)] 
Fix small bug causing assertion failure in computation of SKSS.

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

23 years agoAdd test for correct handling of read/write with invalid fds.
Julian Seward [Thu, 23 May 2002 16:53:20 +0000 (16:53 +0000)] 
Add test for correct handling of read/write with invalid fds.

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

23 years agosched_do_syscalls: properly handle invalid fd in read/write, rather
Julian Seward [Thu, 23 May 2002 16:52:11 +0000 (16:52 +0000)] 
sched_do_syscalls: properly handle invalid fd in read/write, rather
than dying with an assertion failure.

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

23 years agoMake accept() be nonblocking.
Julian Seward [Thu, 23 May 2002 13:13:12 +0000 (13:13 +0000)] 
Make accept() be nonblocking.

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

23 years agoUpdate for sigaltstack
Julian Seward [Wed, 22 May 2002 23:56:33 +0000 (23:56 +0000)] 
Update for sigaltstack

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

23 years ago---> 20020522
Julian Seward [Wed, 22 May 2002 23:56:05 +0000 (23:56 +0000)] 
---> 20020522

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

23 years agosigaltstack -> sigaltstack.c
Julian Seward [Wed, 22 May 2002 23:55:31 +0000 (23:55 +0000)] 
sigaltstack -> sigaltstack.c

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

23 years agoImplement sigaltstack. Most of the logic is copied more-or-less
Julian Seward [Wed, 22 May 2002 23:34:20 +0000 (23:34 +0000)] 
Implement sigaltstack.  Most of the logic is copied more-or-less
verbatim from the Linux kernel sources, which has to be a good thing.

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

23 years agoImplement pthread_yield.
Julian Seward [Wed, 22 May 2002 13:17:31 +0000 (13:17 +0000)] 
Implement pthread_yield.

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

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