Petar Jovanovic [Mon, 16 Jul 2012 14:35:26 +0000 (14:35 +0000)]
Add some missing syscall numbers for MIPS.
The header file has been extended with the missing syscall numbers for MIPS,
and sys_prlimit64 has been enabled. This will make none/tests/rlimit64_nofile
pass.
Fix bug in leak search when an ignore range is specified
The leak search verifies if an address scanned is in a fully
unaddressable secondary map (64 Kb).
However, the function checking that wrongly verifies
if the address is in an ignore range.
So, if the scan encounters one or more bytes in an ignore
range, the leak scan will erroneously skip the rest of
the 64Kb chunk.
The solution is to not test for ignore range in the function
MC_(is_within_valid_secondary) :
The fact that the address is in an ignore range is in any case
verified in the call to MC_(is_valid_aligned_word), which
is called for every Word just after.
This bug can cause false positive leaks in case small
ignore ranges are specified.
295590 Helgrind: Assertion 'cvi->nWaiters > 0' failed when cond var being waited upon destroyed
* when cond var is destroyed, in the PRE, report an error if nwaiters > 0.
* when cond_wait succeeds, get the cond var but do not create one in helgrind
(it must exist if cond_wait was done).
Report an error if cond not found (assuming this is caused by a destroy
done while the thread was cond_wait-ing).
* added a test
fix 303127 Power test suite fixes for frsqrte, vrefp, and vrsqrtefp instructions
The frsqrte and vrefp instructions produce an approximate result.
According to the ISA document for the POWER processor, the result will
vary in its precision for different processor implementations. This patch
fixes the masks to be applied to the results to remove the variability
in the results. The expected output files are also updated to reflect the
change in the result given the new masking of the result.
Improve behaviour of mempool redzone checking if user does not follow the manual (297911)
User is supposed to mark the superblock(s) of a mempool as noaccess.
As Valgrind objective is to find bugs for users which are doing bugs, let's even
find (some) bugs if the user has a bug in the bug detection code.
Petar Jovanovic [Tue, 3 Jul 2012 21:02:42 +0000 (21:02 +0000)]
Including additional header file to syswrap-linux.c to see VG_(get_SP).
Removing a warning of 'implicit declaration of function vgPlain_get_SP' when
compiled for MIPS. Done by including an appropriate header file.
Also, minor style issue correction for #define PSRAn_BE(n,s,t,a) macro.
Add command line flag --trace-notabove which I've found handy.
There are 4 cases now:
(1) Neither --trace-notbelow nor --trace-notabove are given
No superblocks are traced (same behaviour as before)
(2) --trace-notbelow=YY is given
Superblocks in interval [YY ... ] are traced. (same behaviour as before)
(3) --trace-notabove=XX is given
Superblocks in interval [0 ... XX] are traced.
(4) Both --trace-notbelow=YY and --trace-notabove=XX are given
Superblocks in the interval [XX..YY] are traced
Removed some bugs that were marked invalid. I did not move them to NEWS
because I don't think we want to report those.
Moved some more from 3_7_BUGSTATUS to NEWS because they are marked as FIXED
in Bugzilla.
move the mips port bug entry from 3_7_BUGSTATUS.txt to NEWS
Note: a paragraph in PLATFORM CHANGES section of NEWS indicating
the addition of the MIPS port (and some details) would be good
(as this is a major change).
Florian Krohm [Fri, 29 Jun 2012 21:20:52 +0000 (21:20 +0000)]
Increase allowed size of a back-trace to 500 frames.
This limit is large enough for all practical purposes. It exists
only to sanity check the value specified with --num-callers.
Be frugal in record_ExeContext_wrk and only allocate on the stack
as many frames as needed.
Testcase included.
Petar Jovanovic [Wed, 27 Jun 2012 14:14:26 +0000 (14:14 +0000)]
Calculate the size of vki_elf_gregset_t via operator sizeof on MIPS platforms.
The value VKI_ELF_NGREG is now defined with the the help of operator sizeof.
Incorrect size triggered an assertion in the file coredump-elf.c.
The issue was reported as coredump problem at:
https://bugs.kde.org/show_bug.cgi?id=270777
Petar Jovanovic [Tue, 26 Jun 2012 11:30:18 +0000 (11:30 +0000)]
Adding README.mips to Valgrind root directory.
The file lists supported platforms and tools, and it gives suggestions how to
use configure options depending on platform and toolchain.
Previously, these instructions were available at:
https://bugs.kde.org/show_bug.cgi?id=270777.
Petar Jovanovic [Fri, 22 Jun 2012 13:44:04 +0000 (13:44 +0000)]
Initializing destination reg for MoveIns test for MIPS.
The test none/tests/mips32/MoveIns.c did not initialize destination register,
and that is important for movn.s and movn.d instructions. This improves the
test as we will get the same stdout with different compilers and options now.
Julian Seward [Fri, 22 Jun 2012 09:34:58 +0000 (09:34 +0000)]
Update these for Linaro's pre-release build of Ubuntu 12.04, with
Linaro gcc 4.6.3, running on an A9. Not sure why these need to be
updated, but they results are same as native on said platform, so am
not worried.
Petar Jovanovic [Thu, 21 Jun 2012 17:33:35 +0000 (17:33 +0000)]
Correcting sys_shmdt wrapper for MIPS Linux.
This patch fixes incorrect handling of sys_shmdt for MIPS. Linux wrappers have
been added for sys_sigprocmask, sys_timerfd_create, sys_timerfd_gettime, and
sys_timerfd_settime on MIPS.
The bug has been reported at https://bugs.kde.org/show_bug.cgi?id=270777 as
sh_mat issue, and it can be reproduced with shmat-sample.c from
https://bugs.kde.org/show_bug.cgi?id=222545.
The change also fixes sigprocmask from memcheck tests.
Petar Jovanovic [Tue, 19 Jun 2012 18:30:23 +0000 (18:30 +0000)]
Adding MIPS-specific wrapper for syscall pipe.
Syscall pipe returns two descriptors in two registers, and thus a generic
Linux wrapper is not sufficient. This fixes none/tests/fdleak_pipe.
MIPS port is currently tracked as bug #270777.