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
(9) |
2
(13) |
3
(12) |
4
(4) |
5
(5) |
|
6
(5) |
7
(16) |
8
(9) |
9
(14) |
10
(15) |
11
(7) |
12
(2) |
|
13
(7) |
14
(9) |
15
(8) |
16
(6) |
17
|
18
(2) |
19
(4) |
|
20
|
21
(7) |
22
(12) |
23
(6) |
24
(2) |
25
(3) |
26
(2) |
|
27
(2) |
28
(5) |
29
(7) |
30
(10) |
|
|
|
|
From: <sv...@va...> - 2010-06-03 21:23:48
|
Author: sewardj Date: 2010-06-03 22:23:39 +0100 (Thu, 03 Jun 2010) New Revision: 11150 Log: Minor tidyings for VGP_amd64_darwin. Includes fix from https://bugs.kde.org/show_bug.cgi?id=205241#c44 (Klaus Kuehnhammer). Modified: branches/MACOSX106/coregrind/m_signals.c Modified: branches/MACOSX106/coregrind/m_signals.c =================================================================== --- branches/MACOSX106/coregrind/m_signals.c 2010-06-03 21:21:19 UTC (rev 11149) +++ branches/MACOSX106/coregrind/m_signals.c 2010-06-03 21:23:39 UTC (rev 11150) @@ -516,10 +516,9 @@ UWord scclass ) { I_die_here; } - static inline Addr VG_UCONTEXT_LINK_REG( void* ucV ) { - return 0; /* No, really. We have no LRs today. */ - } - static inline Addr VG_UCONTEXT_FRAME_PTR( void* ucV ) { + static inline + void VG_UCONTEXT_TO_UnwindStartRegs( UnwindStartRegs* srP, + void* ucV ) { I_die_here; } @@ -2546,7 +2545,7 @@ /* Get the old host action */ ret = VG_(sigaction)(i, NULL, &sa); -# if defined(VGP_x86_darwin) +# if defined(VGP_x86_darwin) || defined(VGP_amd64_darwin) /* apparently we may not even ask about the disposition of these signals, let alone change them */ if (ret != 0 && (i == VKI_SIGKILL || i == VKI_SIGSTOP)) |
|
From: <sv...@va...> - 2010-06-03 21:21:28
|
Author: sewardj
Date: 2010-06-03 22:21:19 +0100 (Thu, 03 Jun 2010)
New Revision: 11149
Log:
Minor tidyings for Darwin.
Modified:
branches/MACOSX106/coregrind/link_tool_exe.c
Modified: branches/MACOSX106/coregrind/link_tool_exe.c
===================================================================
--- branches/MACOSX106/coregrind/link_tool_exe.c 2010-06-03 20:36:37 UTC (rev 11148)
+++ branches/MACOSX106/coregrind/link_tool_exe.c 2010-06-03 21:21:19 UTC (rev 11149)
@@ -205,7 +205,6 @@
{
int i;
int/*bool*/ failed = 0;
- size_t reqd = 0;
// expect at least: alt-load-address gcc -o foo bar.o
assert(argc > 5);
@@ -275,9 +274,9 @@
}
}
- if (1) printf("\n");
+ if (0) printf("\n");
printf("link_tool_exe: %s\n", cmd);
- if (1) printf("\n");
+ if (0) printf("\n");
r = system(cmd);
if (r == -1 || WEXITSTATUS(r) != 0)
|
|
From: <sv...@va...> - 2010-06-03 20:36:46
|
Author: sewardj
Date: 2010-06-03 21:36:37 +0100 (Thu, 03 Jun 2010)
New Revision: 11148
Log:
merge from trunk: r11146 and r11147: make error propagation work
properly in link_tool_exe.c.
Modified:
branches/MACOSX106/coregrind/link_tool_exe.c
Modified: branches/MACOSX106/coregrind/link_tool_exe.c
===================================================================
--- branches/MACOSX106/coregrind/link_tool_exe.c 2010-06-03 20:27:19 UTC (rev 11147)
+++ branches/MACOSX106/coregrind/link_tool_exe.c 2010-06-03 20:36:37 UTC (rev 11148)
@@ -33,6 +33,16 @@
/* Scheme is simple: pass the specified command to the linker as-is,
except, add "-static" and "-Ttext=<argv[1]>" to it.
+
+ Also apparently we need --build-id=none. For older ld's (2.18
+ vintage) the first two flags are fine. For newer ones (2.20), a
+ .note.gnu.build-id is nevertheless created at the default text
+ segment address, which of course means the resulting executable is
+ unusable. So we have to tell ld not to generate that, with
+ --build-id=none.
+
+ As to "how far back is this flag supported", it's available at
+ least in ld 2.18 and 2.20 and gold 2.20.
*/
// Don't NDEBUG this; the asserts are necesary for
@@ -41,11 +51,13 @@
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
+#include <sys/wait.h> /* WEXITSTATUS */
int main ( int argc, char** argv )
{
- int i;
- size_t reqd = 0;
+ int i;
+ int/*bool*/ failed = 0;
+ size_t reqd = 0;
// expect at least: alt-load-address gcc -o foo bar.o
assert(argc > 5);
@@ -76,7 +88,7 @@
char ttext[100];
assert(strlen(ala) < 30);
memset(ttext, 0, sizeof(ttext));
- sprintf(ttext, " -static -Wl,-Ttext=%s", ala);
+ sprintf(ttext, " -static -Wl,-Ttext=%s -Wl,--build-id=none", ala);
strcpy(cmd, gcc);
strcat(cmd, ttext);
@@ -92,16 +104,16 @@
if (0) printf("\n");
int r = system(cmd);
+ if (r == -1 || WEXITSTATUS(r) != 0)
+ failed = 1;
free(cmd);
- // return the result of system. Note, we should handle it
- // properly; that would involve using WEXITSTATUS on the
- // value system gives back to us.
- return r;
+ // return the result of system.
+ return failed ? 1 : 0;
}
-/* ------------------------- LINUX ------------------------- */
+/* ------------------------- DARWIN ------------------------ */
#elif defined(VGO_darwin)
@@ -191,7 +203,9 @@
int main ( int argc, char** argv )
{
- int i;
+ int i;
+ int/*bool*/ failed = 0;
+ size_t reqd = 0;
// expect at least: alt-load-address gcc -o foo bar.o
assert(argc > 5);
@@ -266,13 +280,13 @@
if (1) printf("\n");
r = system(cmd);
+ if (r == -1 || WEXITSTATUS(r) != 0)
+ failed = 1;
free(cmd);
- // return the result of system. Note, we should handle it
- // properly; that would involve using WEXITSTATUS on the
- // value system gives back to us.
- return r;
+ // return the result of system.
+ return failed ? 1 : 0;
}
|
|
From: <sv...@va...> - 2010-06-03 20:27:28
|
Author: sewardj
Date: 2010-06-03 21:27:19 +0100 (Thu, 03 Jun 2010)
New Revision: 11147
Log:
on MacOSX, correctly propagate failure code of system() call.
Modified:
trunk/coregrind/link_tool_exe.c
Modified: trunk/coregrind/link_tool_exe.c
===================================================================
--- trunk/coregrind/link_tool_exe.c 2010-06-03 08:19:59 UTC (rev 11146)
+++ trunk/coregrind/link_tool_exe.c 2010-06-03 20:27:19 UTC (rev 11147)
@@ -113,7 +113,7 @@
return failed ? 1 : 0;
}
-/* ------------------------- LINUX ------------------------- */
+/* ------------------------- DARWIN ------------------------ */
#elif defined(VGO_darwin)
@@ -129,8 +129,9 @@
int main ( int argc, char** argv )
{
- int i;
- size_t reqd = 0;
+ int i;
+ int/*bool*/ failed = 0;
+ size_t reqd = 0;
// expect at least: alt-load-address gcc -o foo bar.o
assert(argc > 5);
@@ -165,13 +166,13 @@
if (0) printf("\n");
int r = system(cmd);
+ if (r == -1 || WEXITSTATUS(r) != 0)
+ failed = 1;
free(cmd);
- // return the result of system. Note, we should handle it
- // properly; that would involve using WEXITSTATUS on the
- // value system gives back to us.
- return r;
+ // return the result of system.
+ return failed ? 1 : 0;
}
|
|
From: Bart V. A. <bva...@ac...> - 2010-06-03 19:16:03
|
On Thu, Jun 3, 2010 at 10:46 AM, Julian Seward <js...@ac...> wrote: > On Wednesday 02 June 2010, Bart Van Assche wrote: >> The output I get with r11145 on openSUSE 11.2 is as follows: >> >> $ ./vg-in-place --tool=none /bin/ls >> valgrind: mmap(0x400000, 94208) failed in UME with error 22 (Invalid >> argument). valgrind: this can be caused by executables with very large >> text, data or bss segments. > > Possibly fixed in r11146. Can you try again? r11146 fixes this issue on at least openSUSE 11.2. Thanks ! Bart. |
|
From: Julian S. <js...@ac...> - 2010-06-03 09:40:48
|
> I've got some success with the following approach. I steal the address of
> usleep() function from the program with a client request from vgpreload
> part of the tool, and insert a call to that address during code
> instrumentation:
>
> // put sleep duration in %edi
> PUT(56) = 0xF4241:I64
> // put return address on the stack
> t15 = GET:I64(32)
> t16 = Sub64(t15,0x8:I64)
> PUT(32) = t16
> STle(t16) = 0x405F55:I64
> // call the stolen usleep()
> if (1:I1) goto {Call} 0x40A012:I64
>
> This code must be placed immediately before an IMark, whose address is the
> return address of the call (0x405FF5 in this case). It also can not be
> placed at the beginning of an IRSB, because valgrind complains about an
> unknown PC. This approach is very arch-dependent and does not feel right.
I think this will work, but as you say, it is ugly.
> Is there a simpler way to do this? Is it possible to somehow tell the
> valgrind scheduler to let the other threads run for a bit (some kind of
> VG_(sched_yield) or VG_(sleep))?
Yes (I think so .. I tried something like this a couple of months
back).
Let's suppose X is the client instruction after which you want to
let other threads run. After the translation of X, finish the
IRSB, and put a jump to the next instruction. (in the same way
that the front ends will translate an unconditional branch that
they don't chase into).
Except .. for this jump, mark it as Ijk_Yield, not _Boring.
In scheduler.c find this
case VEX_TRC_JMP_YIELD:
/* Explicit yield, because this thread is in a spin-lock
or something. Only let the thread run for a short while
longer. Because swapping to another thread is expensive,
we're prepared to let this thread eat a little more CPU
before swapping to another. That means that short term
spins waiting for hardware to poke memory won't cause a
thread swap. */
if (VG_(dispatch_ctr) > 2000)
VG_(dispatch_ctr) = 2000;
break;
change '2000' to '1'
In scheduler.c find this
/* ------------ now we don't have The Lock ------------ */
...
/* ------------ now we do have The Lock ------------ */
in between these two comments add this
VG_(do_syscall0)(__NR_sched_yield);
this should cause the thread to be placed to the back of the run queue
for threads of this priority, which will allow another thread to run.
but be careful, I think __NR_sched_yield on linux takes a parameter which
controls its behaviour. Google for that.
add debug printing to make sure this is really behaving as you expect.
(it's all pretty fragile, but I'm sure i had something like this working
earlier this year)
J
|
|
From: Konstantin S. <kon...@gm...> - 2010-06-03 09:00:33
|
On Thu, Jun 3, 2010 at 1:04 PM, Julian Seward <js...@ac...> wrote: > >> With Valgrind it seems to be a bit trickier: if we call sleep() inside a >> helper function we will block the whole process because Valgrind is >> single-threaded. >> Question: how can I sleep in a helper function so that other threads get a >> chance to run? > > I don't think you can, unfortunately. I can't think of any remotely sane > way to do it. (Or even any insane ones). I see. So, we need to sleep in the instrumented code using the native program's sleep. This seems to work at some extent, but we had some problems (see the first message from Evgeniy). Do you have a code somewhere which inserts a native program's call into an IRSB? > > Really Valgrind needs to be made multithreaded, but that's a big job. Haha. PIN *is* multithreaded, and that is the biggest headache for me. But yes, I would love to have this headache with valgrind too :) :) --kcc > > J > |
|
From: Julian S. <js...@ac...> - 2010-06-03 08:42:42
|
> With Valgrind it seems to be a bit trickier: if we call sleep() inside a > helper function we will block the whole process because Valgrind is > single-threaded. > Question: how can I sleep in a helper function so that other threads get a > chance to run? I don't think you can, unfortunately. I can't think of any remotely sane way to do it. (Or even any insane ones). Really Valgrind needs to be made multithreaded, but that's a big job. J |
|
From: Alexander P. <gl...@go...> - 2010-06-03 08:30:33
|
Nightly build on mcgrind ( Darwin 9.8.0 i386 ) Started at 2010-06-03 09:06:03 MSD Ended at 2010-06-03 09:25:27 MSD Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 443 tests, 16 stderr failures, 1 stdout failure, 0 post failures == memcheck/tests/null_socket (stdout) memcheck/tests/origin5-bz2 (stderr) memcheck/tests/varinfo1 (stderr) memcheck/tests/varinfo2 (stderr) memcheck/tests/varinfo3 (stderr) memcheck/tests/varinfo4 (stderr) memcheck/tests/varinfo5 (stderr) memcheck/tests/varinfo6 (stderr) none/tests/async-sigs (stderr) none/tests/faultstatus (stderr) none/tests/pth_blockedsig (stderr) none/tests/require-text-symbol-2 (stderr) helgrind/tests/hg05_race2 (stderr) helgrind/tests/rwlock_race (stderr) helgrind/tests/tc06_two_races_xml (stderr) helgrind/tests/tc18_semabuse (stderr) helgrind/tests/tc23_bogus_condwait (stderr) -- Alexander Potapenko Software Engineer Google Moscow |
|
From: Julian S. <js...@ac...> - 2010-06-03 08:25:00
|
On Wednesday 02 June 2010, Bart Van Assche wrote: > Hello Julian, > > The output I get with r11145 on openSUSE 11.2 is as follows: > > $ ./vg-in-place --tool=none /bin/ls > valgrind: mmap(0x400000, 94208) failed in UME with error 22 (Invalid > argument). valgrind: this can be caused by executables with very large > text, data or bss segments. Possibly fixed in r11146. Can you try again? J |
|
From: <sv...@va...> - 2010-06-03 08:20:08
|
Author: sewardj
Date: 2010-06-03 09:19:59 +0100 (Thu, 03 Jun 2010)
New Revision: 11146
Log:
(for linux):
* pass --build-id=none to ld to stop it creating a.note.gnu.build-id
exactly where we don't want it
* propagate error code from system() properly
Modified:
trunk/coregrind/link_tool_exe.c
Modified: trunk/coregrind/link_tool_exe.c
===================================================================
--- trunk/coregrind/link_tool_exe.c 2010-06-02 19:32:51 UTC (rev 11145)
+++ trunk/coregrind/link_tool_exe.c 2010-06-03 08:19:59 UTC (rev 11146)
@@ -33,6 +33,16 @@
/* Scheme is simple: pass the specified command to the linker as-is,
except, add "-static" and "-Ttext=<argv[1]>" to it.
+
+ Also apparently we need --build-id=none. For older ld's (2.18
+ vintage) the first two flags are fine. For newer ones (2.20), a
+ .note.gnu.build-id is nevertheless created at the default text
+ segment address, which of course means the resulting executable is
+ unusable. So we have to tell ld not to generate that, with
+ --build-id=none.
+
+ As to "how far back is this flag supported", it's available at
+ least in ld 2.18 and 2.20 and gold 2.20.
*/
// Don't NDEBUG this; the asserts are necesary for
@@ -41,11 +51,13 @@
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
+#include <sys/wait.h> /* WEXITSTATUS */
int main ( int argc, char** argv )
{
- int i;
- size_t reqd = 0;
+ int i;
+ int/*bool*/ failed = 0;
+ size_t reqd = 0;
// expect at least: alt-load-address gcc -o foo bar.o
assert(argc > 5);
@@ -76,7 +88,7 @@
char ttext[100];
assert(strlen(ala) < 30);
memset(ttext, 0, sizeof(ttext));
- sprintf(ttext, " -static -Wl,-Ttext=%s", ala);
+ sprintf(ttext, " -static -Wl,-Ttext=%s -Wl,--build-id=none", ala);
strcpy(cmd, gcc);
strcat(cmd, ttext);
@@ -92,13 +104,13 @@
if (0) printf("\n");
int r = system(cmd);
+ if (r == -1 || WEXITSTATUS(r) != 0)
+ failed = 1;
free(cmd);
- // return the result of system. Note, we should handle it
- // properly; that would involve using WEXITSTATUS on the
- // value system gives back to us.
- return r;
+ // return the result of system.
+ return failed ? 1 : 0;
}
/* ------------------------- LINUX ------------------------- */
|
|
From: Tom H. <th...@cy...> - 2010-06-03 02:45:42
|
Nightly build on lloyd ( x86_64, Fedora 7 ) Started at 2010-06-03 03:05:04 BST Ended at 2010-06-03 03:45:28 BST Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... failed Regression test results follow == 542 tests, 1 stderr failure, 0 stdout failures, 0 post failures == helgrind/tests/tc06_two_races_xml (stderr) |