You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
|
|
1
(5) |
2
(3) |
|
3
(2) |
4
(3) |
5
(16) |
6
(8) |
7
(6) |
8
(2) |
9
(4) |
|
10
(10) |
11
(22) |
12
(7) |
13
(10) |
14
(11) |
15
(8) |
16
(6) |
|
17
(11) |
18
|
19
(6) |
20
(8) |
21
(5) |
22
(11) |
23
(6) |
|
24
(1) |
25
(6) |
26
(4) |
27
(2) |
28
(1) |
29
|
30
(2) |
|
31
(5) |
|
|
|
|
|
|
|
From: <sv...@va...> - 2015-05-07 18:54:57
|
Author: tom
Date: Thu May 7 19:54:51 2015
New Revision: 15192
Log:
Document fix for BZ#347389.
Modified:
trunk/NEWS
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Thu May 7 19:54:51 2015
@@ -172,6 +172,7 @@
347151 Fix suppression for pthread_rwlock_init on OS X 10.8
347379 valgrind --leak-check=full memleak errors from system libraries on OS X 10.8
== 217236
+347389 unhandled syscall: 373 (Linux ARM syncfs)
n-i-bz Provide implementations of certain compiler builtins to support
compilers who may not provide those
n-i-bz Old STABS code is still being compiled, but never used. Remove it.
|
|
From: <sv...@va...> - 2015-05-07 18:54:39
|
Author: tom
Date: Thu May 7 19:54:31 2015
New Revision: 15191
Log:
Add support for the syncfs system call.
Based on patch from j...@ec... on BZ#347389.
Modified:
trunk/coregrind/m_syswrap/priv_syswrap-linux.h
trunk/coregrind/m_syswrap/syswrap-amd64-linux.c
trunk/coregrind/m_syswrap/syswrap-arm-linux.c
trunk/coregrind/m_syswrap/syswrap-arm64-linux.c
trunk/coregrind/m_syswrap/syswrap-linux.c
trunk/coregrind/m_syswrap/syswrap-mips32-linux.c
trunk/coregrind/m_syswrap/syswrap-mips64-linux.c
trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c
trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c
trunk/coregrind/m_syswrap/syswrap-s390x-linux.c
trunk/coregrind/m_syswrap/syswrap-x86-linux.c
Modified: trunk/coregrind/m_syswrap/priv_syswrap-linux.h
==============================================================================
--- trunk/coregrind/m_syswrap/priv_syswrap-linux.h (original)
+++ trunk/coregrind/m_syswrap/priv_syswrap-linux.h Thu May 7 19:54:31 2015
@@ -287,6 +287,8 @@
DECL_TEMPLATE(linux, sys_getrandom);
DECL_TEMPLATE(linux, sys_memfd_create);
+DECL_TEMPLATE(linux, sys_syncfs);
+
/* ---------------------------------------------------------------------
Wrappers for sockets and ipc-ery. These are split into standalone
procedures because x86-linux hides them inside multiplexors
Modified: trunk/coregrind/m_syswrap/syswrap-amd64-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-amd64-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-amd64-linux.c Thu May 7 19:54:31 2015
@@ -1062,7 +1062,7 @@
LINXY(__NR_open_by_handle_at, sys_open_by_handle_at),// 304
LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 305
-// LINX_(__NR_syncfs, sys_ni_syscall), // 306
+ LINX_(__NR_syncfs, sys_syncfs), // 306
LINXY(__NR_sendmmsg, sys_sendmmsg), // 307
// LINX_(__NR_setns, sys_ni_syscall), // 308
LINXY(__NR_getcpu, sys_getcpu), // 309
Modified: trunk/coregrind/m_syswrap/syswrap-arm-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-arm-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-arm-linux.c Thu May 7 19:54:31 2015
@@ -1212,6 +1212,7 @@
LINXY(__NR_name_to_handle_at, sys_name_to_handle_at),// 370
LINXY(__NR_open_by_handle_at, sys_open_by_handle_at),// 371
LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 372
+ LINX_(__NR_syncfs, sys_syncfs), // 373
LINXY(__NR_sendmmsg, sys_sendmmsg), // 374
LINXY(__NR_getrandom, sys_getrandom), // 384
LINXY(__NR_memfd_create, sys_memfd_create) // 385
Modified: trunk/coregrind/m_syswrap/syswrap-arm64-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-arm64-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-arm64-linux.c Thu May 7 19:54:31 2015
@@ -1042,6 +1042,8 @@
GENXY(__NR_wait4, sys_wait4), // 260
+ LINX_(__NR_syncfs, sys_syncfs), // 267
+
LINXY(__NR_sendmmsg, sys_sendmmsg), // 269
LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 270
LINX_(__NR_process_vm_writev, sys_process_vm_writev), // 271
Modified: trunk/coregrind/m_syswrap/syswrap-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-linux.c Thu May 7 19:54:31 2015
@@ -3064,6 +3064,13 @@
}
}
+PRE(sys_syncfs)
+{
+ *flags |= SfMayBlock;
+ PRINT("sys_syncfs ( %ld )", ARG1);
+ PRE_REG_READ1(long, "syncfs", unsigned int, fd);
+}
+
/* ---------------------------------------------------------------------
utime wrapper
------------------------------------------------------------------ */
Modified: trunk/coregrind/m_syswrap/syswrap-mips32-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-mips32-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-mips32-linux.c Thu May 7 19:54:31 2015
@@ -1112,6 +1112,7 @@
LINXY (__NR_prlimit64, sys_prlimit64), // 338
//..
LINXY (__NR_clock_adjtime, sys_clock_adjtime), // 341
+ LINX_ (__NR_syncfs, sys_syncfs), // 342
//..
LINXY (__NR_process_vm_readv, sys_process_vm_readv), // 345
LINX_ (__NR_process_vm_writev, sys_process_vm_writev), // 346
Modified: trunk/coregrind/m_syswrap/syswrap-mips64-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-mips64-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-mips64-linux.c Thu May 7 19:54:31 2015
@@ -909,7 +909,8 @@
LINXY (__NR_process_vm_readv, sys_process_vm_readv),
LINX_ (__NR_process_vm_writev, sys_process_vm_writev),
LINXY(__NR_getrandom, sys_getrandom),
- LINXY(__NR_memfd_create, sys_memfd_create)
+ LINXY(__NR_memfd_create, sys_memfd_create),
+ LINX_(__NR_syncfs, sys_syncfs)
};
SyscallTableEntry * ML_(get_linux_syscall_entry) ( UInt sysno )
Modified: trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-ppc32-linux.c Thu May 7 19:54:31 2015
@@ -1253,7 +1253,7 @@
LINXY(__NR_accept4, sys_accept4), // 344
LINX_(__NR_clock_adjtime, sys_clock_adjtime), // 347
-
+ LINX_(__NR_syncfs, sys_syncfs), // 348
LINXY(__NR_sendmmsg, sys_sendmmsg), // 349
LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 351
Modified: trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-ppc64-linux.c Thu May 7 19:54:31 2015
@@ -1155,7 +1155,7 @@
LINXY(__NR_accept4, sys_accept4), // 344
LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 347
-
+ LINX_(__NR_syncfs, sys_syncfs), // 348
LINXY(__NR_sendmmsg, sys_sendmmsg), // 349
LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 351
Modified: trunk/coregrind/m_syswrap/syswrap-s390x-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-s390x-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-s390x-linux.c Thu May 7 19:54:31 2015
@@ -1035,7 +1035,7 @@
LINXY(__NR_name_to_handle_at, sys_name_to_handle_at), // 335
LINXY(__NR_open_by_handle_at, sys_open_by_handle_at), // 336
LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 337
-// ?????(__NR_syncfs, ), // 338
+ LINX_(__NR_syncfs, sys_syncfs), // 338
// ?????(__NR_setns, ), // 339
LINXY(__NR_process_vm_readv, sys_process_vm_readv), // 340
Modified: trunk/coregrind/m_syswrap/syswrap-x86-linux.c
==============================================================================
--- trunk/coregrind/m_syswrap/syswrap-x86-linux.c (original)
+++ trunk/coregrind/m_syswrap/syswrap-x86-linux.c Thu May 7 19:54:31 2015
@@ -1805,7 +1805,7 @@
LINXY(__NR_name_to_handle_at, sys_name_to_handle_at),// 341
LINXY(__NR_open_by_handle_at, sys_open_by_handle_at),// 342
LINXY(__NR_clock_adjtime, sys_clock_adjtime), // 343
-// LINX_(__NR_syncfs, sys_ni_syscall), // 344
+ LINX_(__NR_syncfs, sys_syncfs), // 344
LINXY(__NR_sendmmsg, sys_sendmmsg), // 345
// LINX_(__NR_setns, sys_ni_syscall), // 346
|
|
From: Will S. <wil...@vn...> - 2015-05-07 15:18:04
|
On Tue, 2015-05-05 at 16:57 -0500, Will Schmidt wrote: > add updated pth_cond_destroy_busy for ppc64 (BE). > For BE, the summary reports "6 errors" rather than "3 errors". > ppc64LE seems OK with the existing "3 errors" value. > > I've not done a deep dive to verify the output, but expect this > is accurate. > > Signed-off-by: Will Schmidt <wil...@vn...> > --- <snip> > diff --git a/helgrind/tests/pth_cond_destroy_busy.stderr.exp-ppc64be b/helgrind/tests/pth_cond_destroy_busy.stderr.exp-ppc64be > new file mode 100644 > index 0000000..2da688e > --- /dev/null > +++ b/helgrind/tests/pth_cond_destroy_busy.stderr.exp-ppc64be > @@ -0,0 +1,50 @@ > + > +---Thread-Announcement------------------------------------------ > + > +Thread #x is the program's root thread > + > +---Thread-Announcement------------------------------------------ > + > +Thread #x was created > + ... > + by 0x........: pthread_create@* (hg_intercepts.c:...) > + by 0x........: main (pth_cond_destroy_busy.c:45) > + > +---------------------------------------------------------------- > + > +Possible data race during read of size 1 at 0x........ by thread #x > +Locks held: none > + at 0x........: my_memcmp (hg_intercepts.c:...) > + by 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...) > + by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...) > + by 0x........: main (pth_cond_destroy_busy.c:52) > + > +This conflicts with a previous write of size 4 by thread #x > +Locks held: none > + ... > + by 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...) > + by 0x........: pthread_cond_wait@* (hg_intercepts.c:...) > + by 0x........: thread_func (pth_cond_destroy_busy.c:31) > + by 0x........: mythread_wrapper (hg_intercepts.c:...) > + ... > + Address 0x........ is 4 bytes inside data symbol "s_cond" > + > +---------------------------------------------------------------- > + > +Thread #x: pthread_cond_destroy: destruction of condition variable being waited upon > + at 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...) > + by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...) > + by 0x........: main (pth_cond_destroy_busy.c:52) > + > +---------------------------------------------------------------- > + > +Thread #x's call to pthread_cond_destroy failed > + with error code 16 (EBUSY: Device or resource busy) > + at 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...) > + by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...) > + by 0x........: main (pth_cond_destroy_busy.c:52) > + > +First pthread_cond_destroy() call returned EBUSY. > +Second pthread_cond_destroy() call returned success. > + > +ERROR SUMMARY: 6 errors from 3 contexts (suppressed: 0 from 0) Looking for some input on fixing this one up further. The only actual difference between this and the existing .exp is for ppc64BE, where the SUMMARY line reports 6 errors from 3 contexts, versus the baseline 3 errors from 3 contexts. i.e. (ppc64BE) ERROR SUMMARY: 6 errors from 3 contexts (suppressed: 0 from 0) (ppc64LE and other arches). ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0) I see two good options, one bad option. Either way I expect to add/modify a filter to modify the "* errors from * contexts" portion. So I could: replace the "6 errors ..." with "3 errors",.. this is the simplest change, but seems like bad form to change that result to an arbitrary non-zero value like that. replace the "* errors from * contexts" with zeros, similar to the suppressed portion of the summary, and add a new .exp-ppc64 to compare the zeros against. replace the string with zeros, and modify the existing .exp file. This is what I'm leaning towards, but really depends on whether those non-zero values are important. Any thoughts or preferences? Thanks, -Will |
|
From: <sv...@va...> - 2015-05-07 13:17:58
|
Author: rhyskidd
Date: Thu May 7 14:17:50 2015
New Revision: 15190
Log:
valgrind --leak-check=full memleak errors from system libraries on OS X 10.8
bz#347379
== bz#217236
Before:
== 591 tests, 237 stderr failures, 23 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==
After:
== 591 tests, 232 stderr failures, 22 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==
Modified:
trunk/NEWS
trunk/darwin12.supp
Modified: trunk/NEWS
==============================================================================
--- trunk/NEWS (original)
+++ trunk/NEWS Thu May 7 14:17:50 2015
@@ -170,6 +170,8 @@
346487 Compiler generates "note" about a future ABI change for PPC64
346801 Fix link error on OS X: _vgModuleLocal_sf_maybe_extend_stack
347151 Fix suppression for pthread_rwlock_init on OS X 10.8
+347379 valgrind --leak-check=full memleak errors from system libraries on OS X 10.8
+ == 217236
n-i-bz Provide implementations of certain compiler builtins to support
compilers who may not provide those
n-i-bz Old STABS code is still being compiled, but never used. Remove it.
Modified: trunk/darwin12.supp
==============================================================================
--- trunk/darwin12.supp (original)
+++ trunk/darwin12.supp Thu May 7 14:17:50 2015
@@ -350,6 +350,108 @@
fun:_objc_init
}
+{
+ OSX108:leak-14
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:malloc_zone_?alloc
+ ...
+ fun:dyld_register_image_state_change_handler
+ ...
+}
+
+{
+ OSX108:leak-15
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:?alloc
+ ...
+ fun:dyld_register_image_state_change_handler
+ ...
+}
+
+{
+ OSX108:leak-16
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:malloc_zone_?alloc
+ ...
+ fun:map_images_nolock
+ fun:map_images
+ ...
+}
+
+{
+ OSX108:leak-17
+ Memcheck:Leak
+ match-leak-kinds: possible
+ fun:malloc_zone_?alloc
+ ...
+ fun:map_images_nolock
+ fun:map_images
+ ...
+}
+
+{
+ OSX108:leak-18
+ Memcheck:Leak
+ match-leak-kinds: indirect
+ fun:malloc_zone_?alloc
+ ...
+ fun:libSystem_initializer
+ ...
+}
+
+{
+ OSX108:leak-19
+ Memcheck:Leak
+ match-leak-kinds: indirect
+ fun:?alloc
+ ...
+ fun:libSystem_initializer
+ ...
+}
+
+{
+ OSX108:leak-20
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:malloc_zone_?alloc
+ ...
+ fun:libSystem_initializer
+ ...
+}
+
+{
+ OSX108:leak-21
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:?alloc
+ ...
+ fun:libSystem_initializer
+ ...
+}
+
+{
+ OSX108:leak-22
+ Memcheck:Leak
+ match-leak-kinds: reachable
+ fun:?alloc
+ ...
+ fun:_libxpc_initializer
+ ...
+}
+
+{
+ OSX108:leak-23
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+ fun:realloc
+ fun:new_sem_from_pool
+ ...
+}
+
##----------------------------------------------------------------------##
# Memcheck
##----------------------------------------------------------------------##
|
|
From: <sv...@va...> - 2015-05-06 21:24:29
|
Author: philippe
Date: Wed May 6 22:24:23 2015
New Revision: 15189
Log:
Compute total size with unsigned long long
Modified:
trunk/perf/memrw.c
Modified: trunk/perf/memrw.c
==============================================================================
--- trunk/perf/memrw.c (original)
+++ trunk/perf/memrw.c Wed May 6 22:24:23 2015
@@ -106,10 +106,12 @@
nr_thr = 1;
- printf ("total program memory -t %d MB"
- " working set -w %d MB\n",
- (nr_b * sz_b) / (1024*1024),
- (nr_b_ws * sz_b) / (1024*1024));
+ printf ("total program memory -t %llu MB"
+ " working set -w %llu MB\n",
+ ((unsigned long long)nr_b * sz_b)
+ / (unsigned long long) (1024*1024),
+ ((unsigned long long)nr_b_ws * sz_b)
+ / (unsigned long long)(1024*1024));
printf (" working set R or W -l %d times"
" repeat the whole stuff -r %d times\n",
nr_loops,
|
|
From: <sv...@va...> - 2015-05-06 21:11:43
|
Author: carll
Date: Wed May 6 22:11:35 2015
New Revision: 15188
Log:
Patch 8 in a series of cleanup patches from Will Schmidt
Add a helper script to determine if the platform is ppc64le.
This is specifically used to help exclude the 32-bit tests from being
run on a ppc64LE (ABIV2) platform. The 32-bit targets, specifically ppc32/*
is not built on LE.
This patch fixes Vagrind bugzilla 347322.
Added:
trunk/tests/check_ppc64le_cap
Modified:
trunk/none/tests/ppc32/jm_vec_isa_2_07.vgtest
Modified: trunk/none/tests/ppc32/jm_vec_isa_2_07.vgtest
==============================================================================
--- trunk/none/tests/ppc32/jm_vec_isa_2_07.vgtest (original)
+++ trunk/none/tests/ppc32/jm_vec_isa_2_07.vgtest Wed May 6 22:11:35 2015
@@ -1,2 +1,2 @@
-prereq: ../../../tests/check_isa-2_07_cap
+prereq: ../../../tests/check_isa-2_07_cap && ! ../../../tests/check_ppc64le_cap
prog: test_isa_2_07_part1 -a
Added: trunk/tests/check_ppc64le_cap
==============================================================================
--- trunk/tests/check_ppc64le_cap (added)
+++ trunk/tests/check_ppc64le_cap Wed May 6 22:11:35 2015
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+# Helper script to indicate if we are ppc64 LE.
+# Note: The ELFV2 ABI (for ppc64le) specifically does not
+# support the 32-bit environment.
+
+UNAME_M="$(uname -m)"
+
+if [ $UNAME_M != "ppc64le" ]; then
+ exit 1
+else
+ exit 0
+fi
+
|
|
From: <sv...@va...> - 2015-05-06 20:50:24
|
Author: philippe
Date: Wed May 6 21:50:17 2015
New Revision: 15187
Log:
Fix also the rm vgcore of a disabled test (also spotted by Matthias Schwarzott)
Modified:
trunk/none/tests/x86/int.disabled
Modified: trunk/none/tests/x86/int.disabled
==============================================================================
--- trunk/none/tests/x86/int.disabled (original)
+++ trunk/none/tests/x86/int.disabled Wed May 6 21:50:17 2015
@@ -1,4 +1,4 @@
# This is currently disabled because vex doesn't deal with x86
# int $n for n != 0x80 and so the test is pointless (at the moment).
prog: int
-cleanup: rm -f vgcore.pid*
+cleanup: rm -f vgcore.*
|
|
From: <sv...@va...> - 2015-05-06 20:16:42
|
Author: philippe
Date: Wed May 6 21:16:34 2015
New Revision: 15186
Log:
Fix incorrect cleanup lines in 2 tests (spotted by Matthias Schwarzott)
Modified:
trunk/memcheck/tests/badjump.vgtest
trunk/memcheck/tests/supp_unknown.vgtest
Modified: trunk/memcheck/tests/badjump.vgtest
==============================================================================
--- trunk/memcheck/tests/badjump.vgtest (original)
+++ trunk/memcheck/tests/badjump.vgtest Wed May 6 21:16:34 2015
@@ -1,3 +1,3 @@
prog: badjump
-cleanup: rm -f vgcore.pid*
+cleanup: rm -f vgcore.*
stderr_filter: filter_allocs
Modified: trunk/memcheck/tests/supp_unknown.vgtest
==============================================================================
--- trunk/memcheck/tests/supp_unknown.vgtest (original)
+++ trunk/memcheck/tests/supp_unknown.vgtest Wed May 6 21:16:34 2015
@@ -1,4 +1,4 @@
vgopts: -q --suppressions=supp_unknown.supp
prog: badjump
-cleanup: rm -f vgcore.pid*
+cleanup: rm -f vgcore.*
stderr_filter_args: badjump.c
|
|
From: <sv...@va...> - 2015-05-06 20:16:11
|
Author: carll
Date: Wed May 6 21:16:04 2015
New Revision: 15185
Log:
Patch 3 in a series of cleanup patches from Will Schmidt
Update the pth_create_chain vgtest prereq to handle the ppc64le architecture
in the same way as ppc64 (BE).
This patch fixes Vagrind bugzilla 347322.
Modified:
trunk/drd/tests/pth_create_chain.vgtest
Modified: trunk/drd/tests/pth_create_chain.vgtest
==============================================================================
--- trunk/drd/tests/pth_create_chain.vgtest (original)
+++ trunk/drd/tests/pth_create_chain.vgtest Wed May 6 21:16:04 2015
@@ -1,2 +1,2 @@
-prereq: ./supported_libpthread && [ `uname -m` != ppc ] && [ `uname -m` != ppc64 ]
+prereq: ./supported_libpthread && [ `uname -m` != ppc ] && [ `uname -m` != ppc64 ] && [ `uname -m` != ppc64le ]
prog: pth_create_chain 100
|
|
From: <sv...@va...> - 2015-05-06 19:44:22
|
Author: carll
Date: Wed May 6 20:44:14 2015
New Revision: 15184
Log:
Patch 2 in a series of cleanup patches from Will Schmidt
Adjust the badjump2 test for ppc64le/ABIV2. Under the ABIV2 there
is no function descriptor, so the fn[] setup does not apply.
This fixes the badjump2 test failure as seen on ppc64le.
This patch fixes Vagrind bugzilla 347322.
Modified:
trunk/memcheck/tests/badjump2.c
Modified: trunk/memcheck/tests/badjump2.c
==============================================================================
--- trunk/memcheck/tests/badjump2.c (original)
+++ trunk/memcheck/tests/badjump2.c Wed May 6 20:44:14 2015
@@ -35,7 +35,7 @@
if (setjmp(myjmpbuf) == 0) {
// Jump to zero; will cause seg fault
-#if defined(__powerpc64__)
+#if defined(__powerpc64__) && (_CALL_ELF != 2)
unsigned long int fn[3];
fn[0] = 0;
fn[1] = 0;
|
|
From: <sv...@va...> - 2015-05-06 19:18:36
|
Author: carll
Date: Wed May 6 20:18:28 2015
New Revision: 15183
Log:
Patch 1 in a series of cleanup patches from Will Schmidt
Update ifdefs around the bogus-LR-value-handling code to allow ppc64le to
behave as ppc64 (BE) does.
This fixes the overlap test case, where the stack unwinding code was
otherwise coming up with bad instruction pointers.
This patch fixes Vagrind bugzilla 347322.
Modified:
trunk/coregrind/m_stacktrace.c
Modified: trunk/coregrind/m_stacktrace.c
==============================================================================
--- trunk/coregrind/m_stacktrace.c (original)
+++ trunk/coregrind/m_stacktrace.c Wed May 6 20:18:28 2015
@@ -708,7 +708,7 @@
redirs_used = 0;
# endif
-# if defined(VG_PLAT_USES_PPCTOC)
+# if defined(VG_PLAT_USES_PPCTOC) || defined (VGP_ppc64le_linux)
/* Deal with bogus LR values caused by function
interception/wrapping on ppc-TOC platforms; see comment on
similar code a few lines further down. */
|
|
From: Will S. <wil...@vn...> - 2015-05-06 13:08:27
|
On Wed, 2015-05-06 at 01:06 +0200, Philippe Waroquiers wrote: > On Tue, 2015-05-05 at 16:56 -0500, Will Schmidt wrote: > > A handful of patches intended to clean up the valgrind regtest results as seen > > on powerpc platforms. I've locally been running against Fedora20 and > > Fedora21 installations, on Power6, Power7, and Power8 (LE and BE) platforms. > > With these changes in place, the tests are significantly cleaned up. > > > > At a high level, there are several spots where some ifdiffery needed to be > > updated to handle ppc64LE versus BE, and some new .exp files to handle > > the output generated on ppc64*. > Having better tests on ppc64 is nice. > I quickly looked at the patches. Only one remark: adding new .exp files > is not the preferred approach, as these different .exp files implies a > heavier maintenance that e.g. modifying a filter_xxxxxxx to ensure > the output is the same on all platforms. > Maybe some of these ppc64 specific .exp can be avoided/removed > by enhancing the filters ? Ok. And a-ha! :-) I had seen the filters, but something had not quite clicked yet for me there. At a glance at least some of the changes should be doable via the filters. It'll probably be a day or so before I can dig back in and rework things, so look for an updated patchset after a bit. Thanks, -Will > > > For info, I have setup a nightly regression test on gcc112. > The results of last night are: > == 585 tests, 6 stderr failures, 0 stdout failures, 0 stderrB failures, 1 stdoutB failure, 2 post failures == > gdbserver_tests/hgtls (stdoutB) > memcheck/tests/badjump2 (stderr) > memcheck/tests/leak_cpp_interior (stderr) > memcheck/tests/overlap (stderr) > memcheck/tests/supp_unknown (stderr) > massif/tests/big-alloc (post) > massif/tests/deep-D (post) > helgrind/tests/tc06_two_races_xml (stderr) > drd/tests/pth_create_chain (stderr) > > The results are not (yet?) reaching valgrind-testresults, due to > mail setup problems. > > Julian, > > I suspect that the results are not reaching > the result mailing list, because gcc112 puts > phi...@gc... > as mail originator. I could not configure my email address as > originator on this system. Support request was filed to gcc compile > farm admin but no feedback yet since more than a week. > > To solve that, would it be possible to add this email address to > the 'authorised users' of valgrind-testresults > but configuring it so that the posts are not sent to this > address. In other words, the mailing list should accept > mails from this address, but should not send the posts to > that address. > > Thanks > > Philippe > > |
|
From: Carl E. L. <ce...@us...> - 2015-05-05 23:16:20
|
On Tue, 2015-05-05 at 16:56 -0500, Will Schmidt wrote:
> A handful of patches intended to clean up the valgrind regtest results as seen
> on powerpc platforms. I've locally been running against Fedora20 and
> Fedora21 installations, on Power6, Power7, and Power8 (LE and BE) platforms.
> With these changes in place, the tests are significantly cleaned up.
>
> At a high level, there are several spots where some ifdiffery needed to be
> updated to handle ppc64LE versus BE, and some new .exp files to handle
> the output generated on ppc64*.
Will:
Thanks for the patches, I will review and test them. I will not be able
to get to them for a day or so.
Carl Love
|
|
From: Philippe W. <phi...@sk...> - 2015-05-05 23:06:24
|
On Tue, 2015-05-05 at 16:56 -0500, Will Schmidt wrote:
> A handful of patches intended to clean up the valgrind regtest results as seen
> on powerpc platforms. I've locally been running against Fedora20 and
> Fedora21 installations, on Power6, Power7, and Power8 (LE and BE) platforms.
> With these changes in place, the tests are significantly cleaned up.
>
> At a high level, there are several spots where some ifdiffery needed to be
> updated to handle ppc64LE versus BE, and some new .exp files to handle
> the output generated on ppc64*.
Having better tests on ppc64 is nice.
I quickly looked at the patches. Only one remark: adding new .exp files
is not the preferred approach, as these different .exp files implies a
heavier maintenance that e.g. modifying a filter_xxxxxxx to ensure
the output is the same on all platforms.
Maybe some of these ppc64 specific .exp can be avoided/removed
by enhancing the filters ?
For info, I have setup a nightly regression test on gcc112.
The results of last night are:
== 585 tests, 6 stderr failures, 0 stdout failures, 0 stderrB failures, 1 stdoutB failure, 2 post failures ==
gdbserver_tests/hgtls (stdoutB)
memcheck/tests/badjump2 (stderr)
memcheck/tests/leak_cpp_interior (stderr)
memcheck/tests/overlap (stderr)
memcheck/tests/supp_unknown (stderr)
massif/tests/big-alloc (post)
massif/tests/deep-D (post)
helgrind/tests/tc06_two_races_xml (stderr)
drd/tests/pth_create_chain (stderr)
The results are not (yet?) reaching valgrind-testresults, due to
mail setup problems.
Julian,
I suspect that the results are not reaching
the result mailing list, because gcc112 puts
phi...@gc...
as mail originator. I could not configure my email address as
originator on this system. Support request was filed to gcc compile
farm admin but no feedback yet since more than a week.
To solve that, would it be possible to add this email address to
the 'authorised users' of valgrind-testresults
but configuring it so that the posts are not sent to this
address. In other words, the mailing list should accept
mails from this address, but should not send the posts to
that address.
Thanks
Philippe
|
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:29
|
Temporarily remove assert from arch_2_07 check, allow continued
function on Power6, etc.
This is a temporary remove, code needs further rework.
Signed-off-by: Will Schmidt <wil...@vn...>
---
coregrind/m_initimg/initimg-linux.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/coregrind/m_initimg/initimg-linux.c b/coregrind/m_initimg/initimg-linux.c
index cd0b7f3..44f28c9 100644
--- a/coregrind/m_initimg/initimg-linux.c
+++ b/coregrind/m_initimg/initimg-linux.c
@@ -733,7 +733,7 @@ Addr setup_client_stack( void* init_sp,
/* Verify if PPC_FEATURE2_ARCH_2_07 is set in HWCAP2
* that arch_2_07 is also set in VEX HWCAPS
*/
- vg_assert((vex_archinfo->hwcaps & VEX_HWCAPS_PPC64_ISA2_07) == VEX_HWCAPS_PPC64_ISA2_07);
+// vg_assert((vex_archinfo->hwcaps & VEX_HWCAPS_PPC64_ISA2_07) == VEX_HWCAPS_PPC64_ISA2_07);
}
break;
|
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:28
|
add updated pth_cond_destroy_busy for ppc64 (BE). For BE, the summary reports "6 errors" rather than "3 errors". ppc64LE seems OK with the existing "3 errors" value. I've not done a deep dive to verify the output, but expect this is accurate. Signed-off-by: Will Schmidt <wil...@vn...> --- helgrind/tests/Makefile.am | 1 .../tests/pth_cond_destroy_busy.stderr.exp-ppc64be | 50 ++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 helgrind/tests/pth_cond_destroy_busy.stderr.exp-ppc64be diff --git a/helgrind/tests/Makefile.am b/helgrind/tests/Makefile.am index 06078b1..5922fbc 100644 --- a/helgrind/tests/Makefile.am +++ b/helgrind/tests/Makefile.am @@ -46,6 +46,7 @@ EXTRA_DIST = \ pth_destroy_cond.vgtest \ pth_destroy_cond.stdout.exp pth_destroy_cond.stderr.exp \ pth_cond_destroy_busy.vgtest pth_cond_destroy_busy.stderr.exp \ + pth_cond_destroy_busy.stderr.exp-ppc64be \ pth_spinlock.vgtest pth_spinlock.stdout.exp pth_spinlock.stderr.exp \ rwlock_race.vgtest rwlock_race.stdout.exp rwlock_race.stderr.exp \ rwlock_test.vgtest rwlock_test.stdout.exp rwlock_test.stderr.exp \ diff --git a/helgrind/tests/pth_cond_destroy_busy.stderr.exp-ppc64be b/helgrind/tests/pth_cond_destroy_busy.stderr.exp-ppc64be new file mode 100644 index 0000000..2da688e --- /dev/null +++ b/helgrind/tests/pth_cond_destroy_busy.stderr.exp-ppc64be @@ -0,0 +1,50 @@ + +---Thread-Announcement------------------------------------------ + +Thread #x is the program's root thread + +---Thread-Announcement------------------------------------------ + +Thread #x was created + ... + by 0x........: pthread_create@* (hg_intercepts.c:...) + by 0x........: main (pth_cond_destroy_busy.c:45) + +---------------------------------------------------------------- + +Possible data race during read of size 1 at 0x........ by thread #x +Locks held: none + at 0x........: my_memcmp (hg_intercepts.c:...) + by 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...) + by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...) + by 0x........: main (pth_cond_destroy_busy.c:52) + +This conflicts with a previous write of size 4 by thread #x +Locks held: none + ... + by 0x........: pthread_cond_wait_WRK (hg_intercepts.c:...) + by 0x........: pthread_cond_wait@* (hg_intercepts.c:...) + by 0x........: thread_func (pth_cond_destroy_busy.c:31) + by 0x........: mythread_wrapper (hg_intercepts.c:...) + ... + Address 0x........ is 4 bytes inside data symbol "s_cond" + +---------------------------------------------------------------- + +Thread #x: pthread_cond_destroy: destruction of condition variable being waited upon + at 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...) + by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...) + by 0x........: main (pth_cond_destroy_busy.c:52) + +---------------------------------------------------------------- + +Thread #x's call to pthread_cond_destroy failed + with error code 16 (EBUSY: Device or resource busy) + at 0x........: pthread_cond_destroy_WRK (hg_intercepts.c:...) + by 0x........: pthread_cond_destroy@* (hg_intercepts.c:...) + by 0x........: main (pth_cond_destroy_busy.c:52) + +First pthread_cond_destroy() call returned EBUSY. +Second pthread_cond_destroy() call returned success. + +ERROR SUMMARY: 6 errors from 3 contexts (suppressed: 0 from 0) |
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:23
|
add leak_cpp_interior test .exp results to match current ppc64* output Signed-off-by: Will Schmidt <wil...@vn...> --- memcheck/tests/Makefile.am | 1 .../tests/leak_cpp_interior.stderr.exp-ppc64le | 144 ++++++++++++++++++++ 2 files changed, 145 insertions(+) create mode 100644 memcheck/tests/leak_cpp_interior.stderr.exp-ppc64le diff --git a/memcheck/tests/Makefile.am b/memcheck/tests/Makefile.am index ba24af1..2467cfe 100644 --- a/memcheck/tests/Makefile.am +++ b/memcheck/tests/Makefile.am @@ -90,6 +90,7 @@ EXTRA_DIST = \ cond_st.stderr.exp-64bit-non-arm \ cond_st.stderr.exp-32bit-non-arm \ leak_cpp_interior.stderr.exp leak_cpp_interior.stderr.exp-64bit leak_cpp_interior.vgtest \ + leak_cpp_interior.stderr.exp-ppc64le \ custom_alloc.stderr.exp custom_alloc.vgtest \ custom_alloc.stderr.exp-s390x-mvc \ custom-overlap.stderr.exp custom-overlap.vgtest \ diff --git a/memcheck/tests/leak_cpp_interior.stderr.exp-ppc64le b/memcheck/tests/leak_cpp_interior.stderr.exp-ppc64le new file mode 100644 index 0000000..1676210 --- /dev/null +++ b/memcheck/tests/leak_cpp_interior.stderr.exp-ppc64le @@ -0,0 +1,144 @@ + +valgrind output will go to log +VALGRIND_DO_LEAK_CHECK +8 bytes in 1 blocks are definitely lost in loss record ... of ... + by 0x........: doit() (leak_cpp_interior.cpp:112) + by 0x........: main (leak_cpp_interior.cpp:127) + +16 bytes in 1 blocks are possibly lost in loss record ... of ... + by 0x........: doit() (leak_cpp_interior.cpp:115) + by 0x........: main (leak_cpp_interior.cpp:127) + +32 bytes in 1 blocks are possibly lost in loss record ... of ... + by 0x........: doit() (leak_cpp_interior.cpp:117) + by 0x........: main (leak_cpp_interior.cpp:127) + +LEAK SUMMARY: + definitely lost: 8 bytes in 1 blocks + indirectly lost: 0 bytes in 0 blocks + possibly lost: 48 bytes in 2 blocks + still reachable: 191 bytes in 6 blocks + of which reachable via heuristic: + stdstring : 80 bytes in 2 blocks + length64 : 31 bytes in 1 blocks + newarray : 32 bytes in 1 blocks + suppressed: 0 bytes in 0 blocks +Reachable blocks (those to which a pointer was found) are not shown. +To see them, rerun with: --leak-check=full --show-leak-kinds=all + +leak_check summary heuristics multipleinheritance +LEAK SUMMARY: + definitely lost: 8 (+0) bytes in 1 (+0) blocks + indirectly lost: 0 (+0) bytes in 0 (+0) blocks + possibly lost: 191 (+143) bytes in 6 (+4) blocks + still reachable: 48 (-143) bytes in 2 (-4) blocks + of which reachable via heuristic: + stdstring : 0 (-80) bytes in 0 (-2) blocks + length64 : 0 (-31) bytes in 0 (-1) blocks + newarray : 0 (-32) bytes in 0 (-1) blocks + suppressed: 0 (+0) bytes in 0 (+0) blocks +To see details of leaked memory, give 'full' arg to leak_check + +leak_check summary any heuristics newarray +LEAK SUMMARY: + definitely lost: 8 (+0) bytes in 1 (+0) blocks + indirectly lost: 0 (+0) bytes in 0 (+0) blocks + possibly lost: 128 (-63) bytes in 4 (-2) blocks + still reachable: 111 (+63) bytes in 4 (+2) blocks + of which reachable via heuristic: + newarray : 63 (+63) bytes in 2 (+2) blocks + suppressed: 0 (+0) bytes in 0 (+0) blocks +To see details of leaked memory, give 'full' arg to leak_check + +leak_check summary heuristics length64 +LEAK SUMMARY: + definitely lost: 8 (+0) bytes in 1 (+0) blocks + indirectly lost: 0 (+0) bytes in 0 (+0) blocks + possibly lost: 160 (+32) bytes in 5 (+1) blocks + still reachable: 79 (-32) bytes in 3 (-1) blocks + of which reachable via heuristic: + length64 : 31 (+31) bytes in 1 (+1) blocks + newarray : 0 (-63) bytes in 0 (-2) blocks + suppressed: 0 (+0) bytes in 0 (+0) blocks +To see details of leaked memory, give 'full' arg to leak_check + +leak_check summary heuristics stdstring +LEAK SUMMARY: + definitely lost: 8 (+0) bytes in 1 (+0) blocks + indirectly lost: 0 (+0) bytes in 0 (+0) blocks + possibly lost: 111 (-49) bytes in 4 (-1) blocks + still reachable: 128 (+49) bytes in 4 (+1) blocks + of which reachable via heuristic: + stdstring : 80 (+80) bytes in 2 (+2) blocks + length64 : 0 (-31) bytes in 0 (-1) blocks + suppressed: 0 (+0) bytes in 0 (+0) blocks +To see details of leaked memory, give 'full' arg to leak_check + +leak_check summary heuristics multipleinheritance,newarray,stdstring,length64 +LEAK SUMMARY: + definitely lost: 8 (+0) bytes in 1 (+0) blocks + indirectly lost: 0 (+0) bytes in 0 (+0) blocks + possibly lost: 48 (-63) bytes in 2 (-2) blocks + still reachable: 191 (+63) bytes in 6 (+2) blocks + of which reachable via heuristic: + stdstring : 80 (+0) bytes in 2 (+0) blocks + length64 : 31 (+31) bytes in 1 (+1) blocks + newarray : 32 (+32) bytes in 1 (+1) blocks + suppressed: 0 (+0) bytes in 0 (+0) blocks +To see details of leaked memory, give 'full' arg to leak_check + +leak_check summary heuristics all +LEAK SUMMARY: + definitely lost: 8 (+0) bytes in 1 (+0) blocks + indirectly lost: 0 (+0) bytes in 0 (+0) blocks + possibly lost: 48 (+0) bytes in 2 (+0) blocks + still reachable: 191 (+0) bytes in 6 (+0) blocks + of which reachable via heuristic: + stdstring : 80 (+0) bytes in 2 (+0) blocks + length64 : 31 (+0) bytes in 1 (+0) blocks + newarray : 32 (+0) bytes in 1 (+0) blocks + suppressed: 0 (+0) bytes in 0 (+0) blocks +To see details of leaked memory, give 'full' arg to leak_check + +leak_check summary heuristics none +LEAK SUMMARY: + definitely lost: 8 (+0) bytes in 1 (+0) blocks + indirectly lost: 0 (+0) bytes in 0 (+0) blocks + possibly lost: 191 (+143) bytes in 6 (+4) blocks + still reachable: 48 (-143) bytes in 2 (-4) blocks + of which reachable via heuristic: + stdstring : 0 (-80) bytes in 0 (-2) blocks + length64 : 0 (-31) bytes in 0 (-1) blocks + newarray : 0 (-32) bytes in 0 (-1) blocks + suppressed: 0 (+0) bytes in 0 (+0) blocks +To see details of leaked memory, give 'full' arg to leak_check + +Searching for pointers pointing in 20 bytes from 0x........ +*0x........ interior points at 8 bytes inside 0x........ + Address 0x........ is 0 bytes inside data symbol "ptr" +block at 0x........ considered reachable by ptr 0x........ using newarray heuristic +destruct MyClass +destruct MyClass +destruct MyClass +destruct Ce +destruct Be +destruct Ae +destruct Ce +destruct Be +destruct Ae +destruct C +destruct B +destruct A +destruct C +destruct B +destruct A +Finished! + +HEAP SUMMARY: + in use at exit: 0 bytes in 0 blocks + total heap usage: 9 allocs, 9 frees, 247 bytes allocated + +All heap blocks were freed -- no leaks are possible + +For counts of detected and suppressed errors, rerun with: -v +ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0) |
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:18
|
Add a helper script to determine if the platform is ppc64le. This is specifically used to help exclude the 32-bit tests from being run on a ppc64LE (ABIV2) platform. The 32-bit targets, specifically ppc32/* is not not built on LE. Signed-off-by: Will Schmidt <wil...@vn...> --- none/tests/ppc32/jm_vec_isa_2_07.vgtest | 2 +- tests/check_ppc64le_cap | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100755 tests/check_ppc64le_cap diff --git a/none/tests/ppc32/jm_vec_isa_2_07.vgtest b/none/tests/ppc32/jm_vec_isa_2_07.vgtest index a93060a..f69c126 100644 --- a/none/tests/ppc32/jm_vec_isa_2_07.vgtest +++ b/none/tests/ppc32/jm_vec_isa_2_07.vgtest @@ -1,2 +1,2 @@ -prereq: ../../../tests/check_isa-2_07_cap +prereq: ../../../tests/check_isa-2_07_cap && ! ../../../tests/check_ppc64le_cap prog: test_isa_2_07_part1 -a diff --git a/tests/check_ppc64le_cap b/tests/check_ppc64le_cap new file mode 100755 index 0000000..9f48888 --- /dev/null +++ b/tests/check_ppc64le_cap @@ -0,0 +1,14 @@ +#!/bin/sh + +# Helper script to indicate if we are ppc64 LE. +# Note: The ELFV2 ABI (for ppc64le) specifically does not +# support the 32-bit environment. + +UNAME_M="$(uname -m)" + +if [ $UNAME_M != "ppc64le" ]; then + exit 1 +else + exit 0 +fi + |
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:14
|
Add exp output for supp_unknown test for ppc64*. Powerpc* reports an additional "Jump to the invalid address..." message that does not show up in the base .exp. Signed-off-by: Will Schmidt <wil...@vn...> --- memcheck/tests/Makefile.am | 2 +- memcheck/tests/supp_unknown.stderr.exp-ppc64 | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 memcheck/tests/supp_unknown.stderr.exp-ppc64 diff --git a/memcheck/tests/Makefile.am b/memcheck/tests/Makefile.am index f177167..ba24af1 100644 --- a/memcheck/tests/Makefile.am +++ b/memcheck/tests/Makefile.am @@ -234,7 +234,7 @@ EXTRA_DIST = \ str_tester.stderr.exp str_tester.vgtest \ supp-dir.vgtest supp-dir.stderr.exp \ supp_unknown.stderr.exp supp_unknown.vgtest supp_unknown.supp \ - supp_unknown.stderr.exp-kfail \ + supp_unknown.stderr.exp-kfail supp_unknown.stderr.exp-ppc64 \ supp1.stderr.exp supp1.vgtest \ supp2.stderr.exp supp2.vgtest \ supp.supp \ diff --git a/memcheck/tests/supp_unknown.stderr.exp-ppc64 b/memcheck/tests/supp_unknown.stderr.exp-ppc64 new file mode 100644 index 0000000..16933fe --- /dev/null +++ b/memcheck/tests/supp_unknown.stderr.exp-ppc64 @@ -0,0 +1,13 @@ +Jump to the invalid address stated on the next line + ... + Address 0x........ is not stack'd, malloc'd or (recently) free'd + + +Process terminating with default action of signal 11 (SIGSEGV) + Access not within mapped region at address 0x........ + ... + If you believe this happened as a result of a stack + overflow in your program's main thread (unlikely but + possible), you can try to increase the size of the + main thread stack using the --main-stacksize= flag. + The main thread stack size used in this run was .... |
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:12
|
Add deep-D test .exp values for ppc64.
Depending on the system and tne endianness, there are variances in the
library reference, and/or to the specific line number in the library,
so a handful of new .exp files are here to cover those variations.
This change allows the ppc64 targets to pass the massif/deep-D test.
Signed-off-by: Will Schmidt <wil...@vn...>
---
massif/tests/Makefile.am | 1 +
massif/tests/deep-D.post.exp-ppc64 | 55 +++++++++++++++++++++++++++++++
massif/tests/deep-D.post.exp-ppc64-lib | 55 +++++++++++++++++++++++++++++++
massif/tests/deep-D.post.exp-ppc64-line | 55 +++++++++++++++++++++++++++++++
4 files changed, 166 insertions(+)
create mode 100644 massif/tests/deep-D.post.exp-ppc64
create mode 100644 massif/tests/deep-D.post.exp-ppc64-lib
create mode 100644 massif/tests/deep-D.post.exp-ppc64-line
diff --git a/massif/tests/Makefile.am b/massif/tests/Makefile.am
index 50fcf6c..0495afd 100644
--- a/massif/tests/Makefile.am
+++ b/massif/tests/Makefile.am
@@ -14,6 +14,7 @@ EXTRA_DIST = \
deep-B.post.exp deep-B.stderr.exp deep-B.vgtest \
deep-C.post.exp deep-C.stderr.exp deep-C.vgtest \
deep-D.post.exp deep-D.stderr.exp deep-D.vgtest \
+ deep-D.post.exp-ppc64 deep-D.post.exp-ppc64-lib deep-D.post.exp-ppc64-line \
culling1.stderr.exp culling1.vgtest \
culling2.stderr.exp culling2.vgtest \
custom_alloc.post.exp custom_alloc.stderr.exp custom_alloc.vgtest \
diff --git a/massif/tests/deep-D.post.exp-ppc64 b/massif/tests/deep-D.post.exp-ppc64
new file mode 100644
index 0000000..766072f
--- /dev/null
+++ b/massif/tests/deep-D.post.exp-ppc64
@@ -0,0 +1,55 @@
+--------------------------------------------------------------------------------
+Command: ./deep
+Massif arguments: --stacks=no --time-unit=B --alloc-fn=a1 --alloc-fn=a2 --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --alloc-fn=main --depth=20 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
+ms_print arguments: massif.out
+--------------------------------------------------------------------------------
+
+
+ KB
+3.984^ :
+ | :
+ | @@@@@@@:
+ | @ :
+ | :::::::@ :
+ | : @ :
+ | :::::::: @ :
+ | : : @ :
+ | :::::::: : @ :
+ | : : : @ :
+ | :::::::: : : @ :
+ | : : : : @ :
+ | ::::::::: : : : @ :
+ | : : : : : @ :
+ | :::::::: : : : : @ :
+ | : : : : : : @ :
+ | :::::::: : : : : : @ :
+ | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
+ | : : : : : : : : @ :
+ 0 +----------------------------------------------------------------------->KB
+ 0 3.984
+
+Number of snapshots: 11
+ Detailed snapshots: [9]
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 0 0 0 0 0 0
+ 1 408 408 400 8 0
+ 2 816 816 800 16 0
+ 3 1,224 1,224 1,200 24 0
+ 4 1,632 1,632 1,600 32 0
+ 5 2,040 2,040 2,000 40 0
+ 6 2,448 2,448 2,400 48 0
+ 7 2,856 2,856 2,800 56 0
+ 8 3,264 3,264 3,200 64 0
+ 9 3,672 3,672 3,600 72 0
+98.04% (3,600B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->98.04% (3,600B) 0x........: generic_start_main.isra.0 (libc-start.c:285)
+ ->98.04% (3,600B) 0x........: (below main)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 10 4,080 4,080 4,000 80 0
diff --git a/massif/tests/deep-D.post.exp-ppc64-lib b/massif/tests/deep-D.post.exp-ppc64-lib
new file mode 100644
index 0000000..ce68e3b
--- /dev/null
+++ b/massif/tests/deep-D.post.exp-ppc64-lib
@@ -0,0 +1,55 @@
+--------------------------------------------------------------------------------
+Command: ./deep
+Massif arguments: --stacks=no --time-unit=B --alloc-fn=a1 --alloc-fn=a2 --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --alloc-fn=main --depth=20 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
+ms_print arguments: massif.out
+--------------------------------------------------------------------------------
+
+
+ KB
+3.984^ :
+ | :
+ | @@@@@@@:
+ | @ :
+ | :::::::@ :
+ | : @ :
+ | :::::::: @ :
+ | : : @ :
+ | :::::::: : @ :
+ | : : : @ :
+ | :::::::: : : @ :
+ | : : : : @ :
+ | ::::::::: : : : @ :
+ | : : : : : @ :
+ | :::::::: : : : : @ :
+ | : : : : : : @ :
+ | :::::::: : : : : : @ :
+ | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
+ | : : : : : : : : @ :
+ 0 +----------------------------------------------------------------------->KB
+ 0 3.984
+
+Number of snapshots: 11
+ Detailed snapshots: [9]
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 0 0 0 0 0 0
+ 1 408 408 400 8 0
+ 2 816 816 800 16 0
+ 3 1,224 1,224 1,200 24 0
+ 4 1,632 1,632 1,600 32 0
+ 5 2,040 2,040 2,000 40 0
+ 6 2,448 2,448 2,400 48 0
+ 7 2,856 2,856 2,800 56 0
+ 8 3,264 3,264 3,200 64 0
+ 9 3,672 3,672 3,600 72 0
+98.04% (3,600B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->98.04% (3,600B) 0x........: generic_start_main.isra.0 (in /...libc...)
+ ->98.04% (3,600B) 0x........: (below main)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 10 4,080 4,080 4,000 80 0
diff --git a/massif/tests/deep-D.post.exp-ppc64-line b/massif/tests/deep-D.post.exp-ppc64-line
new file mode 100644
index 0000000..39b1216
--- /dev/null
+++ b/massif/tests/deep-D.post.exp-ppc64-line
@@ -0,0 +1,55 @@
+--------------------------------------------------------------------------------
+Command: ./deep
+Massif arguments: --stacks=no --time-unit=B --alloc-fn=a1 --alloc-fn=a2 --alloc-fn=a3 --alloc-fn=a4 --alloc-fn=a5 --alloc-fn=a6 --alloc-fn=a7 --alloc-fn=a8 --alloc-fn=a9 --alloc-fn=a10 --alloc-fn=a11 --alloc-fn=a12 --alloc-fn=main --depth=20 --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element
+ms_print arguments: massif.out
+--------------------------------------------------------------------------------
+
+
+ KB
+3.984^ :
+ | :
+ | @@@@@@@:
+ | @ :
+ | :::::::@ :
+ | : @ :
+ | :::::::: @ :
+ | : : @ :
+ | :::::::: : @ :
+ | : : : @ :
+ | :::::::: : : @ :
+ | : : : : @ :
+ | ::::::::: : : : @ :
+ | : : : : : @ :
+ | :::::::: : : : : @ :
+ | : : : : : : @ :
+ | :::::::: : : : : : @ :
+ | : : : : : : : @ :
+ | :::::::: : : : : : : @ :
+ | : : : : : : : : @ :
+ 0 +----------------------------------------------------------------------->KB
+ 0 3.984
+
+Number of snapshots: 11
+ Detailed snapshots: [9]
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 0 0 0 0 0 0
+ 1 408 408 400 8 0
+ 2 816 816 800 16 0
+ 3 1,224 1,224 1,200 24 0
+ 4 1,632 1,632 1,600 32 0
+ 5 2,040 2,040 2,000 40 0
+ 6 2,448 2,448 2,400 48 0
+ 7 2,856 2,856 2,800 56 0
+ 8 3,264 3,264 3,200 64 0
+ 9 3,672 3,672 3,600 72 0
+98.04% (3,600B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+->98.04% (3,600B) 0x........: generic_start_main.isra.0 (libc-start.c:287)
+ ->98.04% (3,600B) 0x........: (below main)
+
+--------------------------------------------------------------------------------
+ n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B)
+--------------------------------------------------------------------------------
+ 10 4,080 4,080 4,000 80 0
|
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:07
|
Add a tc06_two_races_xml exp output for ppc64. This differs from the other .exp in that it removes the pthread_create_WRK entry from the expected output for ppc64. Note that the filter_stderr helper also removes the pthread_create_WRK content, so I believe this to be an extension of that change. Signed-off-by: Will Schmidt <wil...@vn...> --- helgrind/tests/Makefile.am | 1 helgrind/tests/tc06_two_races_xml.stderr.exp-ppc64 | 259 ++++++++++++++++++++ 2 files changed, 260 insertions(+) create mode 100644 helgrind/tests/tc06_two_races_xml.stderr.exp-ppc64 diff --git a/helgrind/tests/Makefile.am b/helgrind/tests/Makefile.am index 7ed3478..06078b1 100644 --- a/helgrind/tests/Makefile.am +++ b/helgrind/tests/Makefile.am @@ -65,6 +65,7 @@ EXTRA_DIST = \ tc06_two_races.stderr.exp \ tc06_two_races_xml.vgtest tc06_two_races_xml.stdout.exp \ tc06_two_races_xml.stderr.exp \ + tc06_two_races_xml.stderr.exp-ppc64 \ tc07_hbl1.vgtest tc07_hbl1.stdout.exp tc07_hbl1.stderr.exp \ tc08_hbl2.vgtest tc08_hbl2.stdout.exp tc08_hbl2.stderr.exp \ tc09_bad_unlock.vgtest tc09_bad_unlock.stdout.exp \ diff --git a/helgrind/tests/tc06_two_races_xml.stderr.exp-ppc64 b/helgrind/tests/tc06_two_races_xml.stderr.exp-ppc64 new file mode 100644 index 0000000..e75829e --- /dev/null +++ b/helgrind/tests/tc06_two_races_xml.stderr.exp-ppc64 @@ -0,0 +1,259 @@ +<?xml version="1.0"?> + +<valgrindoutput> + +<protocolversion>4</protocolversion> +<protocoltool>helgrind</protocoltool> + +<preamble> + <line>Helgrind, a thread error detector</line> + <line>Copyright (C) XXXX-YYYY, and GNU GPL'd, by OpenWorks LLP et al.</line> + <line>Using Valgrind-X.Y.X and LibVEX; rerun with -h for copyright info</line> + <line>Command: ./tc06_two_races</line> +</preamble> + +<pid>...</pid> +<ppid>...</ppid> +<tool>helgrind</tool> + +<args> + <vargv> + <exe>...</exe> + <arg>--command-line-only=yes</arg> + <arg>--memcheck:leak-check=no</arg> + <arg>--tool=helgrind</arg> + <arg>--read-var-info=yes</arg> + <arg>--xml=yes</arg> + <arg>--xml-fd=2</arg> + <arg>--log-file=/dev/null</arg> + </vargv> + <argv> + <exe>...</exe> + </argv> +</args> + +<status> + <state>RUNNING</state> + <time>...</time> +</status> + +<announcethread> + <hthreadid>1</hthreadid> + <isrootthread></isrootthread> +</announcethread> + +<announcethread> + <hthreadid>2</hthreadid> + <stack> + <frame>...</frame> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>pthread_create@*</fn> + <dir>...</dir> + <file>hg_intercepts.c</file> + <line>...</line> + </frame> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>main</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>26</line> + </frame> + </stack> +</announcethread> + +<error> + <unique>...</unique> + <tid>...</tid> + <kind>Race</kind> + <xwhat> + <text>Possible data race during read of size 4 at 0x........ by thread #x</text> + <hthreadid>1</hthreadid> + </xwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>main</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>31</line> + </frame> + </stack> + <xauxwhat> + <text>This conflicts with a previous write of size 4 by thread #x</text> + <hthreadid>2</hthreadid> + </xauxwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>child_fn</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>14</line> + </frame> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>mythread_wrapper</fn> + <dir>...</dir> + <file>hg_intercepts.c</file> + <line>...</line> + </frame> + <frame>...</frame> + </stack> + <auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat> + <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat> +</error> + +<error> + <unique>...</unique> + <tid>...</tid> + <kind>Race</kind> + <xwhat> + <text>Possible data race during write of size 4 at 0x........ by thread #x</text> + <hthreadid>1</hthreadid> + </xwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>main</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>31</line> + </frame> + </stack> + <xauxwhat> + <text>This conflicts with a previous write of size 4 by thread #x</text> + <hthreadid>2</hthreadid> + </xauxwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>child_fn</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>14</line> + </frame> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>mythread_wrapper</fn> + <dir>...</dir> + <file>hg_intercepts.c</file> + <line>...</line> + </frame> + <frame>...</frame> + </stack> + <auxwhat>Location 0x........ is 0 bytes inside global var "unprot1"</auxwhat> + <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat> +</error> + +<error> + <unique>...</unique> + <tid>...</tid> + <kind>Race</kind> + <xwhat> + <text>Possible data race during read of size 4 at 0x........ by thread #x</text> + <hthreadid>1</hthreadid> + </xwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>main</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>35</line> + </frame> + </stack> + <xauxwhat> + <text>This conflicts with a previous write of size 4 by thread #x</text> + <hthreadid>2</hthreadid> + </xauxwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>child_fn</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>18</line> + </frame> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>mythread_wrapper</fn> + <dir>...</dir> + <file>hg_intercepts.c</file> + <line>...</line> + </frame> + <frame>...</frame> + </stack> + <auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat> + <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat> +</error> + +<error> + <unique>...</unique> + <tid>...</tid> + <kind>Race</kind> + <xwhat> + <text>Possible data race during write of size 4 at 0x........ by thread #x</text> + <hthreadid>1</hthreadid> + </xwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>main</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>35</line> + </frame> + </stack> + <xauxwhat> + <text>This conflicts with a previous write of size 4 by thread #x</text> + <hthreadid>2</hthreadid> + </xauxwhat> + <stack> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>child_fn</fn> + <dir>...</dir> + <file>tc06_two_races.c</file> + <line>18</line> + </frame> + <frame> + <ip>0x........</ip> + <obj>...</obj> + <fn>mythread_wrapper</fn> + <dir>...</dir> + <file>hg_intercepts.c</file> + <line>...</line> + </frame> + <frame>...</frame> + </stack> + <auxwhat>Location 0x........ is 0 bytes inside global var "unprot2"</auxwhat> + <xauxwhat><text>declared at tc06_two_races.c:9</text> <file>tc06_two_races.c</file> <line>9</line> </xauxwhat> +</error> + + +<status> + <state>FINISHED</state> + <time>...</time> +</status> + +<errorcounts>...</errorcounts> + +<suppcounts>...</suppcounts> + +</valgrindoutput> + |
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:06
|
Update the pth_create_chain vgtest prereq to handle the ppc64le architecture in the same way as ppc64 (BE). Signed-off-by: Will Schmidt <wil...@vn...> --- drd/tests/pth_create_chain.vgtest | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drd/tests/pth_create_chain.vgtest b/drd/tests/pth_create_chain.vgtest index b8c2422..5fc5ced 100644 --- a/drd/tests/pth_create_chain.vgtest +++ b/drd/tests/pth_create_chain.vgtest @@ -1,2 +1,2 @@ -prereq: ./supported_libpthread && [ `uname -m` != ppc ] && [ `uname -m` != ppc64 ] +prereq: ./supported_libpthread && [ `uname -m` != ppc ] && [ `uname -m` != ppc64 ] && [ `uname -m` != ppc64le ] prog: pth_create_chain 100 |
|
From: Will S. <wil...@vn...> - 2015-05-05 22:27:06
|
Update the massif/big-alloc test for ppc64*. In comparision to the existing .exp files, a few of the values generated on ppc64* are simply off. I expect the generated values are OK, but I've not done a deep dive to fully verify. This .exp allows the ppc64 targets to pass the test. Signed-off-by: Will Schmidt <wil...@vn...> --- massif/tests/Makefile.am | 2 + massif/tests/big-alloc.post.exp-ppc64 | 54 +++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 massif/tests/big-alloc.post.exp-ppc64 diff --git a/massif/tests/Makefile.am b/massif/tests/Makefile.am index 5017543..50fcf6c 100644 --- a/massif/tests/Makefile.am +++ b/massif/tests/Makefile.am @@ -8,7 +8,7 @@ EXTRA_DIST = \ alloc-fns-B.post.exp alloc-fns-B.stderr.exp alloc-fns-B.vgtest \ basic.post.exp basic.stderr.exp basic.vgtest \ basic2.post.exp basic2.stderr.exp basic2.vgtest \ - big-alloc.post.exp big-alloc.post.exp-64bit \ + big-alloc.post.exp big-alloc.post.exp-64bit big-alloc.post.exp-ppc64 \ big-alloc.stderr.exp big-alloc.vgtest \ deep-A.post.exp deep-A.stderr.exp deep-A.vgtest \ deep-B.post.exp deep-B.stderr.exp deep-B.vgtest \ diff --git a/massif/tests/big-alloc.post.exp-ppc64 b/massif/tests/big-alloc.post.exp-ppc64 new file mode 100644 index 0000000..1d2c906 --- /dev/null +++ b/massif/tests/big-alloc.post.exp-ppc64 @@ -0,0 +1,54 @@ +-------------------------------------------------------------------------------- +Command: ./big-alloc +Massif arguments: --stacks=no --time-unit=B --massif-out-file=massif.out --ignore-fn=__part_load_locale --ignore-fn=__time_load_locale --ignore-fn=dwarf2_unwind_dyld_add_image_hook --ignore-fn=get_or_create_key_element +ms_print arguments: massif.out +-------------------------------------------------------------------------------- + + + MB +100.6^ : + | : + | @@@@@@@: + | @ : + | :::::::@ : + | : @ : + | :::::::: @ : + | : : @ : + | :::::::: : @ : + | : : : @ : + | :::::::: : : @ : + | : : : : @ : + | ::::::::: : : : @ : + | : : : : : @ : + | :::::::: : : : : @ : + | : : : : : : @ : + | :::::::: : : : : : @ : + | : : : : : : : @ : + | :::::::: : : : : : : @ : + | : : : : : : : : @ : + 0 +----------------------------------------------------------------------->MB + 0 100.6 + +Number of snapshots: 11 + Detailed snapshots: [9] + +-------------------------------------------------------------------------------- + n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) +-------------------------------------------------------------------------------- + 0 0 0 0 0 0 + 1 10,551,240 10,551,240 10,485,760 65,480 0 + 2 21,102,480 21,102,480 20,971,520 130,960 0 + 3 31,653,720 31,653,720 31,457,280 196,440 0 + 4 42,204,960 42,204,960 41,943,040 261,920 0 + 5 52,756,200 52,756,200 52,428,800 327,400 0 + 6 63,307,440 63,307,440 62,914,560 392,880 0 + 7 73,858,680 73,858,680 73,400,320 458,360 0 + 8 84,409,920 84,409,920 83,886,080 523,840 0 + 9 94,961,160 94,961,160 94,371,840 589,320 0 +99.38% (94,371,840B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. +->99.38% (94,371,840B) 0x........: main (big-alloc.c:12) + +-------------------------------------------------------------------------------- + n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) +-------------------------------------------------------------------------------- + 10 105,512,400 105,512,400 104,857,600 654,800 0 |
|
From: Will S. <wil...@vn...> - 2015-05-05 22:26:55
|
Update ifdefs around the bogus-LR-value-handling code to allow ppc64le to
behave as ppc64 (BE) does.
This fixes the overlap test case, where the stack unwinding code was
otherwise coming up with bad instruction pointers.
Signed-off-by: Will Schmidt <wil...@vn...>
---
coregrind/m_stacktrace.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/coregrind/m_stacktrace.c b/coregrind/m_stacktrace.c
index c0d4c11..b2d1886 100644
--- a/coregrind/m_stacktrace.c
+++ b/coregrind/m_stacktrace.c
@@ -708,7 +708,7 @@ UInt VG_(get_StackTrace_wrk) ( ThreadId tid_if_known,
redirs_used = 0;
# endif
-# if defined(VG_PLAT_USES_PPCTOC)
+# if defined(VG_PLAT_USES_PPCTOC) || defined (VGP_ppc64le_linux)
/* Deal with bogus LR values caused by function
interception/wrapping on ppc-TOC platforms; see comment on
similar code a few lines further down. */
|
|
From: Will S. <wil...@vn...> - 2015-05-05 22:26:50
|
Adjust the badjump2 test for ppc64le/ABIV2. Under the ABIV2 there
is no function descriptor, so the fn[] setup does not apply.
This fixes the badjump2 test failure as seen on ppc64le.
Signed-off-by: Will Schmidt <wil...@vn...>
---
memcheck/tests/badjump2.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/memcheck/tests/badjump2.c b/memcheck/tests/badjump2.c
index ad7329f..7e09af5 100644
--- a/memcheck/tests/badjump2.c
+++ b/memcheck/tests/badjump2.c
@@ -35,7 +35,7 @@ int main(void)
if (setjmp(myjmpbuf) == 0) {
// Jump to zero; will cause seg fault
-#if defined(__powerpc64__)
+#if defined(__powerpc64__) && (_CALL_ELF != 2)
unsigned long int fn[3];
fn[0] = 0;
fn[1] = 0;
|