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
(4) |
2
(17) |
3
(9) |
4
(14) |
5
(10) |
6
(11) |
7
(8) |
|
8
(9) |
9
(11) |
10
(29) |
11
(27) |
12
(29) |
13
(36) |
14
(8) |
|
15
(18) |
16
(30) |
17
(25) |
18
(6) |
19
(16) |
20
(13) |
21
(10) |
|
22
(16) |
23
(7) |
24
(8) |
25
(13) |
26
(14) |
27
(14) |
28
(5) |
|
29
(6) |
30
(21) |
31
(14) |
|
|
|
|
|
From: <sv...@va...> - 2009-03-20 21:04:17
|
Author: sewardj Date: 2009-03-20 21:03:50 +0000 (Fri, 20 Mar 2009) New Revision: 9475 Log: Update. Modified: branches/DARWIN/docs/internals/Darwin-notes.txt Modified: branches/DARWIN/docs/internals/Darwin-notes.txt =================================================================== --- branches/DARWIN/docs/internals/Darwin-notes.txt 2009-03-20 18:07:14 UTC (rev 9474) +++ branches/DARWIN/docs/internals/Darwin-notes.txt 2009-03-20 21:03:50 UTC (rev 9475) @@ -77,3 +77,11 @@ PRE(sys_fork), #ifdeffery + + +syswrap-generic.c: VG_(init_preopened_fds) is #ifdefd for Darwin + + +scheduler.c: fi VEX_TRC_JMP_NODECODE and VEX_TRC_JMP_SIGSEGV +also: get rid of VG_(lock), VG_(unlock), VG_(unlock_lwpid) +also: VG_(get_thread_out_of_syscall) |
|
From: <sv...@va...> - 2009-03-20 18:07:25
|
Author: sewardj
Date: 2009-03-20 18:07:14 +0000 (Fri, 20 Mar 2009)
New Revision: 9474
Log:
Add comments to VG_(get_thread_out_of_syscall). Despite how it looks
at first glance, this is a comment-only change.
Modified:
branches/DARWIN/coregrind/m_scheduler/scheduler.c
Modified: branches/DARWIN/coregrind/m_scheduler/scheduler.c
===================================================================
--- branches/DARWIN/coregrind/m_scheduler/scheduler.c 2009-03-20 17:56:34 UTC (rev 9473)
+++ branches/DARWIN/coregrind/m_scheduler/scheduler.c 2009-03-20 18:07:14 UTC (rev 9474)
@@ -341,6 +341,7 @@
vg_assert(!VG_(is_running_thread)(tid));
if (VG_(threads)[tid].status == VgTs_WaitSys) {
+ __attribute__((unused)) Int r;
if (VG_(clo_trace_signals)) {
VG_(message)(Vg_DebugMsg,
"get_thread_out_of_syscall zaps tid %d lwp %d",
@@ -355,7 +356,21 @@
thread_abort(VG_(threads)[tid].os_state.lwpid);
}
#else
- VG_(tkill)(VG_(threads)[tid].os_state.lwpid, VG_SIGVGKILL);
+ r = VG_(tkill)(VG_(threads)[tid].os_state.lwpid, VG_SIGVGKILL);
+ /* JRS 2009-Mar-20: should we assert for r==0 (tkill succeeded)?
+ I'm really not sure. Here's a race scenario which argues
+ that we shoudn't; but equally I'm not sure the scenario is
+ even possible, because of constraints caused by the question
+ of who holds the BigLock when.
+
+ Target thread tid does sys_read on a socket and blocks. This
+ function gets called, and we observe correctly that tid's
+ status is WaitSys but then for whatever reason this function
+ goes very slowly for a while. Then data arrives from
+ wherever, tid's sys_read returns, tid exits. Then we do
+ tkill on tid, but tid no longer exists; tkill returns an
+ error code and the assert fails. */
+ /* vg_assert(r == 0); */
#endif
}
}
|
|
From: <sv...@va...> - 2009-03-20 17:56:52
|
Author: sewardj
Date: 2009-03-20 17:56:34 +0000 (Fri, 20 Mar 2009)
New Revision: 9473
Log:
* handle sys___pthread_canceled (perhaps wrongly)
* add a comment to PRE(sys___pthread_sigmask)
Modified:
branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-03-20 17:54:36 UTC (rev 9472)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-darwin.c 2009-03-20 17:56:34 UTC (rev 9473)
@@ -1547,6 +1547,8 @@
PRE(sys___pthread_sigmask)
{
// GrP fixme
+ // JRS: arguments are identical to sigprocmask
+ // (how, sigset_t*, sigset_t*). Perhaps behave identically?
static Bool warned;
if (!warned && VG_(clo_trace_unknown_syscalls)) {
VG_(printf)("UNKNOWN __pthread_sigmask is unsupported. "
@@ -1557,6 +1559,16 @@
}
+PRE(sys___pthread_canceled)
+{
+ *flags |= SfMayBlock; /* might kill this thread??? */
+ /* I don't think so -- I think it just changes the cancellation
+ state. But taking no chances. */
+ PRINT("__pthread_canceled ( %ld )", ARG1);
+ PRE_REG_READ1(long, "__pthread_canceled", void*, arg1);
+}
+
+
PRE(sys___pthread_markcancel)
{
*flags |= SfMayBlock; /* might kill this thread??? */
@@ -7126,7 +7138,7 @@
// _____(__NR___sigwait),
MACX_(__NR___disable_threadsignal, sys___disable_threadsignal),
MACX_(__NR___pthread_markcancel, sys___pthread_markcancel),
-// (__NR___pthread_canceled),
+ MACX_(__NR___pthread_canceled, sys___pthread_canceled),
MACX_(__NR___semwait_signal, sys___semwait_signal),
_____(VG_DARWIN_SYSCALL_CONSTRUCT_UNIX(335)), // old utrace
// _____(__NR_proc_info),
|
|
From: <sv...@va...> - 2009-03-20 17:54:48
|
Author: sewardj
Date: 2009-03-20 17:54:36 +0000 (Fri, 20 Mar 2009)
New Revision: 9472
Log:
A non-functional change: As GrP observed, the argument to VG_(tkill)
is not as claimed a ThreadId but instead a lwpid. Change the name and
type of the parameter, therefore.
Modified:
branches/DARWIN/coregrind/m_libcsignal.c
branches/DARWIN/coregrind/pub_core_libcsignal.h
Modified: branches/DARWIN/coregrind/m_libcsignal.c
===================================================================
--- branches/DARWIN/coregrind/m_libcsignal.c 2009-03-20 12:08:54 UTC (rev 9471)
+++ branches/DARWIN/coregrind/m_libcsignal.c 2009-03-20 17:54:36 UTC (rev 9472)
@@ -287,20 +287,19 @@
return sr_isError(res) ? -1 : 0;
}
-// GrP fixme this is an lwpid, not a ThreadId
-Int VG_(tkill)( ThreadId tid, Int signo )
+Int VG_(tkill)( Int lwpid, Int signo )
{
# if defined(__NR_tkill)
SysRes res = VG_(mk_SysRes_Error)(VKI_ENOSYS);
- res = VG_(do_syscall2)(__NR_tkill, tid, signo);
+ res = VG_(do_syscall2)(__NR_tkill, lwpid, signo);
if (sr_isError(res) && sr_Err(res) == VKI_ENOSYS)
- res = VG_(do_syscall2)(__NR_kill, tid, signo);
+ res = VG_(do_syscall2)(__NR_kill, lwpid, signo);
return sr_isError(res) ? -1 : 0;
# elif defined(VGO_darwin)
// Note that the __pthread_kill syscall takes a Mach thread, not a pthread.
SysRes res;
- res = VG_(do_syscall2)(__NR___pthread_kill, tid, signo);
+ res = VG_(do_syscall2)(__NR___pthread_kill, lwpid, signo);
return sr_isError(res) ? -1 : 0;
# else
Modified: branches/DARWIN/coregrind/pub_core_libcsignal.h
===================================================================
--- branches/DARWIN/coregrind/pub_core_libcsignal.h 2009-03-20 12:08:54 UTC (rev 9471)
+++ branches/DARWIN/coregrind/pub_core_libcsignal.h 2009-03-20 17:54:36 UTC (rev 9472)
@@ -76,7 +76,7 @@
extern Int VG_(kill) ( Int pid, Int signo );
-extern Int VG_(tkill) ( ThreadId tid, Int signo );
+extern Int VG_(tkill) ( Int lwpid, Int signo );
/* A cut-down version of POSIX sigtimedwait: poll for pending signals
mentioned in the sigset_t, and if any are present, select one
|
|
From: <sv...@va...> - 2009-03-20 12:09:02
|
Author: sewardj
Date: 2009-03-20 12:08:54 +0000 (Fri, 20 Mar 2009)
New Revision: 9471
Log:
Reenable synthesis of SIGSEGV and SIGILL on Darwin.
Modified:
branches/DARWIN/coregrind/m_scheduler/scheduler.c
Modified: branches/DARWIN/coregrind/m_scheduler/scheduler.c
===================================================================
--- branches/DARWIN/coregrind/m_scheduler/scheduler.c 2009-03-20 11:48:24 UTC (rev 9470)
+++ branches/DARWIN/coregrind/m_scheduler/scheduler.c 2009-03-20 12:08:54 UTC (rev 9471)
@@ -1161,36 +1161,26 @@
break;
case VEX_TRC_JMP_SIGSEGV:
-#if defined(VGO_darwin)
- // DDD: #warning GrP fixme synth signals
- I_die_here;
- VG_(core_panic)("sigsegv - no synth signals on darwin");
-#else
VG_(synth_fault)(tid);
-#endif
break;
case VEX_TRC_JMP_NODECODE:
- VG_(message)(Vg_UserMsg,
- "valgrind: Unrecognised instruction at address %#lx.", VG_(get_IP)(tid));
-#if defined(VGO_darwin)
- // GrP fixme signals
- __builtin_trap();
-#else
-#define M(a) VG_(message)(Vg_UserMsg, a);
- M("Your program just tried to execute an instruction that Valgrind" );
- M("did not recognise. There are two possible reasons for this." );
- M("1. Your program has a bug and erroneously jumped to a non-code" );
- M(" location. If you are running Memcheck and you just saw a" );
- M(" warning about a bad jump, it's probably your program's fault.");
- M("2. The instruction is legitimate but Valgrind doesn't handle it,");
- M(" i.e. it's Valgrind's fault. If you think this is the case or");
- M(" you are not sure, please let us know and we'll try to fix it.");
- M("Either way, Valgrind will now raise a SIGILL signal which will" );
- M("probably kill your program." );
-#undef M
+ VG_(message)(Vg_UserMsg,
+ "valgrind: Unrecognised instruction at address %#lx.",
+ VG_(get_IP)(tid));
+# define M(a) VG_(message)(Vg_UserMsg, a);
+ M("Your program just tried to execute an instruction that Valgrind" );
+ M("did not recognise. There are two possible reasons for this." );
+ M("1. Your program has a bug and erroneously jumped to a non-code" );
+ M(" location. If you are running Memcheck and you just saw a" );
+ M(" warning about a bad jump, it's probably your program's fault.");
+ M("2. The instruction is legitimate but Valgrind doesn't handle it,");
+ M(" i.e. it's Valgrind's fault. If you think this is the case or");
+ M(" you are not sure, please let us know and we'll try to fix it.");
+ M("Either way, Valgrind will now raise a SIGILL signal which will" );
+ M("probably kill your program." );
+# undef M
VG_(synth_sigill)(tid, VG_(get_IP)(tid));
-#endif
break;
case VEX_TRC_JMP_TINVAL:
|
|
From: <sv...@va...> - 2009-03-20 11:48:44
|
Author: sewardj
Date: 2009-03-20 11:48:24 +0000 (Fri, 20 Mar 2009)
New Revision: 9470
Log:
wqthread_hijack: add extra locking so we don't have multiple threads
messing with the address space manager at the same time.
Modified:
branches/DARWIN/coregrind/m_scheduler/scheduler.c
branches/DARWIN/coregrind/m_syswrap/syswrap-main.c
branches/DARWIN/coregrind/m_syswrap/syswrap-x86-darwin.c
branches/DARWIN/coregrind/pub_core_scheduler.h
Modified: branches/DARWIN/coregrind/m_scheduler/scheduler.c
===================================================================
--- branches/DARWIN/coregrind/m_scheduler/scheduler.c 2009-03-20 10:32:37 UTC (rev 9469)
+++ branches/DARWIN/coregrind/m_scheduler/scheduler.c 2009-03-20 11:48:24 UTC (rev 9470)
@@ -276,6 +276,19 @@
ML_(sema_up)(&the_BigLock);
}
+/* See pub_core_scheduler.h for description */
+void VG_(acquire_BigLock_LL) ( HChar* who )
+{
+ ML_(sema_down)(&the_BigLock);
+}
+
+/* See pub_core_scheduler.h for description */
+void VG_(release_BigLock_LL) ( HChar* who )
+{
+ ML_(sema_up)(&the_BigLock);
+}
+
+
void VG_(lock)(void)
{
ML_(sema_down)(&the_BigLock);
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-main.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-main.c 2009-03-20 10:32:37 UTC (rev 9469)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-main.c 2009-03-20 11:48:24 UTC (rev 9470)
@@ -2141,7 +2141,7 @@
ThreadState* tst;
SyscallInfo* sci;
- VG_(acquire_BigLock)(tid, "wqthread_continue");
+ VG_(acquire_BigLock)(tid, "wqthread_continue_NORETURN");
PRINT("SYSCALL[%d,%d](%5lld) workq_ops() starting new workqueue item\n",
VG_(getpid)(), tid, (Long)VG_DARWIN_SYSNO_PRINT(__NR_workq_ops));
Modified: branches/DARWIN/coregrind/m_syswrap/syswrap-x86-darwin.c
===================================================================
--- branches/DARWIN/coregrind/m_syswrap/syswrap-x86-darwin.c 2009-03-20 10:32:37 UTC (rev 9469)
+++ branches/DARWIN/coregrind/m_syswrap/syswrap-x86-darwin.c 2009-03-20 11:48:24 UTC (rev 9470)
@@ -278,6 +278,11 @@
ThreadState *tst = (ThreadState *)func_arg;
VexGuestX86State *vex = &tst->arch.vex;
+ /* JRS: attempts here to acquire the bigLock (_LL) cause threaded
+ programs to hang. Implication is that some other thread holds
+ the bigLock at this point. Is that OK? I don't understand
+ this. */
+
// VG_(printf)("pthread_hijack pthread %p, machthread %p, func %p, arg %p, stack %p, flags %p, stack %p\n", self, kport, func, func_arg, stacksize, flags, sp);
@@ -359,8 +364,7 @@
);
-/*
- wqthread note: The kernel may create or destroy pthreads in the
+/* wqthread note: The kernel may create or destroy pthreads in the
wqthread pool at any time with no userspace interaction,
and wqthread_start may be entered at any time with no userspace
interaction.
@@ -375,6 +379,16 @@
Addr stack;
SizeT stacksize;
+ /* When we enter here we hold no lock (!), so we better acquire it
+ pronto. Why do we hold no lock? Because (presumably) the only
+ way to get here is as a result of a SfMayBlock syscall
+ "workq_ops(WQOPS_THREAD_RETURN)", which will have dropped the
+ lock. At least that's clear for the 'reuse' case. The
+ non-reuse case? Dunno, perhaps it's a new thread the kernel
+ pulled out of a hat. In any case we still need to take a
+ lock. */
+ VG_(acquire_BigLock_LL)("wqthread_hijack");
+
if (reuse) {
// This thread already exists; we're merely re-entering
// after leaving via workq_ops(WQOPS_THREAD_RETURN).
@@ -414,6 +428,15 @@
if (reuse) {
// Continue V's thread back in the scheduler.
// The client thread is of course in another location entirely.
+
+ /* Drop the lock before going into
+ ML_(wqthread_continue_NORETURN). The latter will immediately
+ attempt to reacquire it in non-LL mode, which is a bit
+ wasteful but I don't think is harmful. A better solution
+ would be to not drop the lock but instead "upgrade" it from a
+ LL lock to a full lock, but that's too much like hard work
+ right now. */
+ VG_(release_BigLock_LL)("wqthread_hijack(1)");
ML_(wqthread_continue_NORETURN)(tst->tid);
}
else {
@@ -446,6 +469,16 @@
VG_(am_do_sync_check)("after", "wqthread_hijack", 0);
// Go!
+ /* Same comments as the 'release' in the then-clause.
+ start_thread_NORETURN calls run_thread_NORETURN calls
+ thread_wrapper which acquires the lock before continuing.
+ Let's hope nothing non-thread-local happens until that point.
+
+ FIXME: I think this is plain wrong .. if we get to
+ thread_wrapper not holding the lock, and someone has recycled
+ this thread slot in the meantime, we're hosed. Is that
+ possible, though? */
+ VG_(release_BigLock_LL)("wqthread_hijack(2)");
call_on_new_stack_0_1(tst->os_state.valgrind_stack_init_SP, 0,
start_thread_NORETURN, (Word)tst);
}
Modified: branches/DARWIN/coregrind/pub_core_scheduler.h
===================================================================
--- branches/DARWIN/coregrind/pub_core_scheduler.h 2009-03-20 10:32:37 UTC (rev 9469)
+++ branches/DARWIN/coregrind/pub_core_scheduler.h 2009-03-20 11:48:24 UTC (rev 9470)
@@ -59,6 +59,11 @@
thread. */
extern void VG_(acquire_BigLock) ( ThreadId tid, HChar* who );
+/* Simple version, which simply acquires the lock, but does not mess
+ with the guest state in the same way as the non _LL version
+ does. */
+extern void VG_(acquire_BigLock_LL) ( HChar* who );
+
/* Set a thread into a sleeping state. Before the call, the thread
must be runnable, and holding the CPU lock. When this call
returns, the thread will be set to the specified sleeping state,
@@ -67,9 +72,14 @@
caller must be careful not to touch any shared state. It is also
the caller's responsibility to actually block until the thread is
ready to run again. */
-extern void VG_(release_BigLock) ( ThreadId tid, ThreadStatus state, HChar* who );
+extern void VG_(release_BigLock) ( ThreadId tid,
+ ThreadStatus state, HChar* who );
-/* Yield the CPU for a while */
+/* Matching function to acquire_BigLock_LL. */
+extern void VG_(release_BigLock_LL) ( HChar* who );
+
+/* Yield the CPU for a while. Drops/acquires the lock using the
+ normal (non _LL) functions. */
extern void VG_(vg_yield)(void);
// The scheduler.
|
|
From: <sv...@va...> - 2009-03-20 10:32:55
|
Author: tom
Date: 2009-03-20 10:32:37 +0000 (Fri, 20 Mar 2009)
New Revision: 9469
Log:
Check whether the symbol table is in the main object file or the debug
object file and use that information to decide which svma and bias
values to use when working out what section a symbol refers to.
Modified:
trunk/coregrind/m_debuginfo/readelf.c
Modified: trunk/coregrind/m_debuginfo/readelf.c
===================================================================
--- trunk/coregrind/m_debuginfo/readelf.c 2009-03-20 00:28:50 UTC (rev 9468)
+++ trunk/coregrind/m_debuginfo/readelf.c 2009-03-20 10:32:37 UTC (rev 9469)
@@ -206,6 +206,7 @@
ElfXX_Sym* sym, /* ELF symbol */
Char* sym_name, /* name */
Addr sym_svma, /* address as stated in the object file */
+ Bool symtab_in_debug, /* symbol table is in the debug file */
UChar* opd_img, /* oimage of .opd sec (ppc64-linux only) */
PtrdiffT opd_bias, /* for biasing AVMAs found in .opd */
/* OUTPUTS */
@@ -224,6 +225,8 @@
Bool is_in_opd;
# endif
Bool in_text, in_data, in_sdata, in_rodata, in_bss, in_sbss;
+ Addr text_svma, data_svma, sdata_svma, rodata_svma, bss_svma, sbss_svma;
+ PtrdiffT text_bias, data_bias, sdata_bias, rodata_bias, bss_bias, sbss_bias;
/* Set defaults */
*sym_name_out = sym_name;
@@ -245,67 +248,85 @@
|| ELFXX_ST_TYPE(sym->st_info) == STT_OBJECT
);
- /* Now bias sym_avma_out accordingly */
-#if 0
- /* This works, but seems a bit crude */
- if (ELFXX_ST_TYPE(sym->st_info) == STT_OBJECT) {
- *is_text_out = False;
- *sym_avma_out += di->data_bias;
+ /* Work out the svma and bias for each section as it will appear in
+ addresses in the symbol table. */
+ if (symtab_in_debug) {
+ text_svma = di->text_debug_svma;
+ text_bias = di->text_debug_bias;
+ data_svma = di->data_debug_svma;
+ data_bias = di->data_debug_bias;
+ sdata_svma = di->sdata_debug_svma;
+ sdata_bias = di->sdata_debug_bias;
+ rodata_svma = di->rodata_debug_svma;
+ rodata_bias = di->rodata_debug_bias;
+ bss_svma = di->bss_debug_svma;
+ bss_bias = di->bss_debug_bias;
+ sbss_svma = di->sbss_debug_svma;
+ sbss_bias = di->sbss_debug_bias;
} else {
- *is_text_out = True;
- *sym_avma_out += di->text_bias;
+ text_svma = di->text_svma;
+ text_bias = di->text_bias;
+ data_svma = di->data_svma;
+ data_bias = di->data_bias;
+ sdata_svma = di->sdata_svma;
+ sdata_bias = di->sdata_bias;
+ rodata_svma = di->rodata_svma;
+ rodata_bias = di->rodata_bias;
+ bss_svma = di->bss_svma;
+ bss_bias = di->bss_bias;
+ sbss_svma = di->sbss_svma;
+ sbss_bias = di->sbss_bias;
}
-#else
- /* Try to figure out exactly which section the symbol is from and
- bias accordingly. Screws up if the previously deduced section
- svma address ranges are wrong. */
+
+ /* Now bias sym_avma_out accordingly by figuring out exactly which
+ section the symbol is from and bias accordingly. Screws up if
+ the previously deduced section svma address ranges are wrong. */
if (di->text_present
&& di->text_size > 0
- && sym_svma >= di->text_svma
- && sym_svma < di->text_svma + di->text_size) {
+ && sym_svma >= text_svma
+ && sym_svma < text_svma + di->text_size) {
*is_text_out = True;
- *sym_avma_out += di->text_bias;
+ *sym_avma_out += text_bias;
} else
if (di->data_present
&& di->data_size > 0
- && sym_svma >= di->data_svma
- && sym_svma < di->data_svma + di->data_size) {
+ && sym_svma >= data_svma
+ && sym_svma < data_svma + di->data_size) {
*is_text_out = False;
- *sym_avma_out += di->data_bias;
+ *sym_avma_out += data_bias;
} else
if (di->sdata_present
&& di->sdata_size > 0
- && sym_svma >= di->sdata_svma
- && sym_svma < di->sdata_svma + di->sdata_size) {
+ && sym_svma >= sdata_svma
+ && sym_svma < sdata_svma + di->sdata_size) {
*is_text_out = False;
- *sym_avma_out += di->sdata_bias;
+ *sym_avma_out += sdata_bias;
} else
if (di->rodata_present
&& di->rodata_size > 0
- && sym_svma >= di->rodata_svma
- && sym_svma < di->rodata_svma + di->rodata_size) {
+ && sym_svma >= rodata_svma
+ && sym_svma < rodata_svma + di->rodata_size) {
*is_text_out = False;
- *sym_avma_out += di->rodata_bias;
+ *sym_avma_out += rodata_bias;
} else
if (di->bss_present
&& di->bss_size > 0
- && sym_svma >= di->bss_svma
- && sym_svma < di->bss_svma + di->bss_size) {
+ && sym_svma >= bss_svma
+ && sym_svma < bss_svma + di->bss_size) {
*is_text_out = False;
- *sym_avma_out += di->bss_bias;
+ *sym_avma_out += bss_bias;
} else
if (di->sbss_present
&& di->sbss_size > 0
- && sym_svma >= di->sbss_svma
- && sym_svma < di->sbss_svma + di->sbss_size) {
+ && sym_svma >= sbss_svma
+ && sym_svma < sbss_svma + di->sbss_size) {
*is_text_out = False;
- *sym_avma_out += di->sbss_bias;
+ *sym_avma_out += sbss_bias;
} else {
/* Assume it's in .text. Is this a good idea? */
*is_text_out = True;
- *sym_avma_out += di->text_bias;
+ *sym_avma_out += text_bias;
}
-#endif
# if defined(VGP_ppc64_linux)
/* Allow STT_NOTYPE in the very special case where we're running on
@@ -522,7 +543,7 @@
# if defined(VGP_ppc64_linux)
/* It's crucial that we never add symbol addresses in the .opd
section. This would completely mess up function redirection and
- intercepting. This assert ensures that any symbols that make it
+ intercepting. This assert ensures that anysymbols that make it
into the symbol table on ppc64-linux don't point into .opd. */
if (di->opd_present && di->opd_size > 0) {
vg_assert(*sym_avma_out + *sym_size_out <= di->opd_avma
@@ -543,6 +564,7 @@
struct _DebugInfo* di, UChar* tab_name,
ElfXX_Sym* symtab_img, SizeT symtab_szB,
UChar* strtab_img, SizeT strtab_szB,
+ Bool symtab_in_debug,
UChar* opd_img /* ppc64-linux only */
)
{
@@ -577,6 +599,7 @@
show_raw_elf_symbol(i, sym, sym_name, sym_svma, False);
if (get_elf_symbol_info(di, sym, sym_name, sym_svma,
+ symtab_in_debug,
opd_img, di->text_bias,
&sym_name_really,
&sym_avma_really,
@@ -641,6 +664,7 @@
struct _DebugInfo* di, UChar* tab_name,
ElfXX_Sym* symtab_img, SizeT symtab_szB,
UChar* strtab_img, SizeT strtab_szB,
+ Bool symtab_in_debug,
UChar* opd_img /* ppc64-linux only */
)
{
@@ -686,6 +710,7 @@
show_raw_elf_symbol(i, sym, sym_name, sym_svma, True);
if (get_elf_symbol_info(di, sym, sym_name, sym_svma,
+ symtab_in_debug,
opd_img, di->text_bias,
&sym_name_really,
&sym_avma_really,
@@ -1934,21 +1959,24 @@
void (*read_elf_symtab)(struct _DebugInfo*,UChar*,
ElfXX_Sym*,SizeT,
UChar*,SizeT,
- UChar*);
+ Bool,UChar*);
+ Bool symtab_in_debug;
# if defined(VGP_ppc64_linux)
read_elf_symtab = read_elf_symtab__ppc64_linux;
# else
read_elf_symtab = read_elf_symtab__normal;
# endif
+ symtab_in_debug = (Addr)symtab_img >= dimage
+ && (Addr)symtab_img < dimage + n_dimage;
read_elf_symtab(di, "symbol table",
symtab_img, symtab_sz,
strtab_img, strtab_sz,
- opd_img);
+ symtab_in_debug, opd_img);
read_elf_symtab(di, "dynamic symbol table",
dynsym_img, dynsym_sz,
dynstr_img, dynstr_sz,
- opd_img);
+ False, opd_img);
}
/* Read .eh_frame (call-frame-info) if any */
|
|
From: Bart V. A. <bar...@gm...> - 2009-03-20 08:58:08
|
Nightly build on georgia-tech-cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) started at 2009-03-20 03:20:14 EDT Results differ from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 407 tests, 36 stderr failures, 9 stdout failures, 0 post failures == exp-ptrcheck/tests/bad_percentify (stderr) exp-ptrcheck/tests/base (stderr) exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/fp (stderr) exp-ptrcheck/tests/globalerr (stderr) exp-ptrcheck/tests/hackedbz2 (stderr) exp-ptrcheck/tests/hp_bounds (stderr) exp-ptrcheck/tests/hp_dangle (stderr) exp-ptrcheck/tests/justify (stderr) exp-ptrcheck/tests/partial_bad (stderr) exp-ptrcheck/tests/partial_good (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) exp-ptrcheck/tests/realloc (stderr) exp-ptrcheck/tests/stackerr (stderr) exp-ptrcheck/tests/strcpy (stderr) exp-ptrcheck/tests/supp (stderr) exp-ptrcheck/tests/tricky (stderr) exp-ptrcheck/tests/unaligned (stderr) exp-ptrcheck/tests/zero (stderr) helgrind/tests/hg05_race2 (stderr) memcheck/tests/deep_templates (stdout) memcheck/tests/leak-cases-full (stderr) memcheck/tests/leak-cases-summary (stderr) memcheck/tests/leak-cycle (stderr) 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) memcheck/tests/wrap8 (stderr) none/tests/linux/mremap (stderr) none/tests/linux/mremap2 (stdout) none/tests/ppc32/jm-fp (stdout) none/tests/ppc32/jm-vmx (stdout) none/tests/ppc32/round (stdout) none/tests/ppc32/test_gx (stdout) none/tests/ppc64/jm-fp (stdout) none/tests/ppc64/jm-vmx (stdout) none/tests/ppc64/round (stdout) none/tests/shell_valid2 (stderr) none/tests/shell_valid3 (stderr) ================================================= == Results from 24 hours ago == ================================================= Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Last 20 lines of verbose log follow echo mv -f .deps/memcheck_ppc32_linux-mc_leakcheck.Tpo .deps/memcheck_ppc32_linux-mc_leakcheck.Po gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_malloc_wrappers.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo -c -o memcheck_ppc32_linux-mc_malloc_wrappers.o `test -f 'mc_malloc_wrappers.c' || echo './'`mc_malloc_wrappers.c mv -f .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Po gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_main.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_main.Tpo -c -o memcheck_ppc32_linux-mc_main.o `test -f 'mc_main.c' || echo './'`mc_main.c mv -f .deps/memcheck_ppc32_linux-mc_main.Tpo .deps/memcheck_ppc32_linux-mc_main.Po gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_translate.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_translate.Tpo -c -o memcheck_ppc32_linux-mc_translate.o `test -f 'mc_translate.c' || echo './'`mc_translate.c mv -f .deps/memcheck_ppc32_linux-mc_translate.Tpo .deps/memcheck_ppc32_linux-mc_translate.Po gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_machine.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_machine.Tpo -c -o memcheck_ppc32_linux-mc_machine.o `test -f 'mc_machine.c' || echo './'`mc_machine.c mc_machine.c: In function ‘get_otrack_shadow_offset_wrk’: mc_machine.c:343: error: ‘VexGuestPPC32State’ has no member named ‘guest_CIA_AT_SC’ make[3]: *** [memcheck_ppc32_linux-mc_machine.o] Error 1 make[3]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind' make: *** [all] Error 2 Running regression tests ... cd valgrind && perl tests/vg_regtest --all Job ID = 4040.cell-user.cell.buzz vg_regtest: 'arch_test' is missing. Did you forget to 'make check'? ================================================= == Difference between 24 hours ago and now == ================================================= *** old.short 2009-03-20 03:47:19.000000000 -0400 --- new.short 2009-03-20 04:57:53.000000000 -0400 *************** *** 6,27 **** ! Last 20 lines of verbose log follow echo ! mv -f .deps/memcheck_ppc32_linux-mc_leakcheck.Tpo .deps/memcheck_ppc32_linux-mc_leakcheck.Po ! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_malloc_wrappers.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo -c -o memcheck_ppc32_linux-mc_malloc_wrappers.o `test -f 'mc_malloc_wrappers.c' || echo './'`mc_malloc_wrappers.c ! mv -f .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Po ! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_main.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_main.Tpo -c -o memcheck_ppc32_linux-mc_main.o `test -f 'mc_main.c' || echo './'`mc_main.c ! mv -f .deps/memcheck_ppc32_linux-mc_main.Tpo .deps/memcheck_ppc32_linux-mc_main.Po ! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_translate.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_translate.Tpo -c -o memcheck_ppc32_linux-mc_translate.o `test -f 'mc_translate.c' || echo './'`mc_translate.c ! mv -f .deps/memcheck_ppc32_linux-mc_translate.Tpo .deps/memcheck_ppc32_linux-mc_translate.Po ! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_machine.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_machine.Tpo -c -o memcheck_ppc32_linux-mc_machine.o `test -f 'mc_machine.c' || echo './'`mc_machine.c ! mc_machine.c: In function ‘get_otrack_shadow_offset_wrk’: ! mc_machine.c:343: error: ‘VexGuestPPC32State’ has no member named ‘guest_CIA_AT_SC’ ! make[3]: *** [memcheck_ppc32_linux-mc_machine.o] Error 1 ! make[3]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck' ! make[2]: *** [all-recursive] Error 1 ! make[2]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck' ! make[1]: *** [all-recursive] Error 1 ! make[1]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind' ! make: *** [all] Error 2 ! Running regression tests ... cd valgrind && perl tests/vg_regtest --all ! Job ID = 4040.cell-user.cell.buzz ! vg_regtest: 'arch_test' is missing. Did you forget to 'make check'? --- 6,55 ---- ! Regression test results follow ! ! == 407 tests, 36 stderr failures, 9 stdout failures, 0 post failures == ! exp-ptrcheck/tests/bad_percentify (stderr) ! exp-ptrcheck/tests/base (stderr) ! exp-ptrcheck/tests/ccc (stderr) ! exp-ptrcheck/tests/fp (stderr) ! exp-ptrcheck/tests/globalerr (stderr) ! exp-ptrcheck/tests/hackedbz2 (stderr) ! exp-ptrcheck/tests/hp_bounds (stderr) ! exp-ptrcheck/tests/hp_dangle (stderr) ! exp-ptrcheck/tests/justify (stderr) ! exp-ptrcheck/tests/partial_bad (stderr) ! exp-ptrcheck/tests/partial_good (stderr) ! exp-ptrcheck/tests/preen_invars (stderr) ! exp-ptrcheck/tests/pth_create (stderr) ! exp-ptrcheck/tests/pth_specific (stderr) ! exp-ptrcheck/tests/realloc (stderr) ! exp-ptrcheck/tests/stackerr (stderr) ! exp-ptrcheck/tests/strcpy (stderr) ! exp-ptrcheck/tests/supp (stderr) ! exp-ptrcheck/tests/tricky (stderr) ! exp-ptrcheck/tests/unaligned (stderr) ! exp-ptrcheck/tests/zero (stderr) ! helgrind/tests/hg05_race2 (stderr) ! memcheck/tests/deep_templates (stdout) ! memcheck/tests/leak-cases-full (stderr) ! memcheck/tests/leak-cases-summary (stderr) ! memcheck/tests/leak-cycle (stderr) ! 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) ! memcheck/tests/wrap8 (stderr) ! none/tests/linux/mremap (stderr) ! none/tests/linux/mremap2 (stdout) ! none/tests/ppc32/jm-fp (stdout) ! none/tests/ppc32/jm-vmx (stdout) ! none/tests/ppc32/round (stdout) ! none/tests/ppc32/test_gx (stdout) ! none/tests/ppc64/jm-fp (stdout) ! none/tests/ppc64/jm-vmx (stdout) ! none/tests/ppc64/round (stdout) ! none/tests/shell_valid2 (stderr) ! none/tests/shell_valid3 (stderr) ! |
|
From: Bart V. A. <bar...@gm...> - 2009-03-20 07:00:08
|
Nightly build on georgia-tech-cellbuzz-native ( cellbuzz, ppc64, Fedora 7, native ) started at 2009-03-20 02:00:01 EDT
Results differ from 24 hours ago
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... done
Last 20 lines of verbose log follow echo
pub_core_commandline.h:40: error: expected â)â before âargcâ
m_commandline.c:46: error: expected declaration specifiers or â...â before âHCharâ
m_commandline.c: In function âadd_stringâ:
m_commandline.c:48: error: âstrâ undeclared (first use in this function)
m_commandline.c:48: error: (Each undeclared identifier is reported only once
m_commandline.c:48: error: for each function it appears in.)
m_commandline.c: At top level:
m_commandline.c:56: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â*â token
m_commandline.c:95: error: expected â)â before â*â token
m_commandline.c:153: error: expected â)â before âargcâ
make[3]: *** [libcoregrind_ppc32_linux_a-m_commandline.o] Error 1
make[3]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/coregrind'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/coregrind'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind'
make: *** [all] Error 2
Running regression tests ... cd valgrind && perl tests/vg_regtest --all
Job ID = 4033.cell-user.cell.buzz
vg_regtest: `/net/home/bart/software/valgrind/nightly/valgrind/./coregrind/valgrind' not found or not a file (/net/home/bart/software/valgrind/nightly/valgrind)
=================================================
== Results from 24 hours ago ==
=================================================
Checking out valgrind source tree ... done
Configuring valgrind ... done
Building valgrind ... done
Running regression tests ... done
Last 20 lines of verbose log follow echo
mv -f .deps/memcheck_ppc32_linux-mc_leakcheck.Tpo .deps/memcheck_ppc32_linux-mc_leakcheck.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_malloc_wrappers.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo -c -o memcheck_ppc32_linux-mc_malloc_wrappers.o `test -f 'mc_malloc_wrappers.c' || echo './'`mc_malloc_wrappers.c
mv -f .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_main.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_main.Tpo -c -o memcheck_ppc32_linux-mc_main.o `test -f 'mc_main.c' || echo './'`mc_main.c
mv -f .deps/memcheck_ppc32_linux-mc_main.Tpo .deps/memcheck_ppc32_linux-mc_main.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_translate.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_translate.Tpo -c -o memcheck_ppc32_linux-mc_translate.o `test -f 'mc_translate.c' || echo './'`mc_translate.c
mv -f .deps/memcheck_ppc32_linux-mc_translate.Tpo .deps/memcheck_ppc32_linux-mc_translate.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_machine.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_machine.Tpo -c -o memcheck_ppc32_linux-mc_machine.o `test -f 'mc_machine.c' || echo './'`mc_machine.c
mc_machine.c: In function âget_otrack_shadow_offset_wrkâ:
mc_machine.c:343: error: âVexGuestPPC32Stateâ has no member named âguest_CIA_AT_SCâ
make[3]: *** [memcheck_ppc32_linux-mc_machine.o] Error 1
make[3]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind'
make: *** [all] Error 2
Running regression tests ... cd valgrind && perl tests/vg_regtest --all
Job ID = 4029.cell-user.cell.buzz
vg_regtest: 'arch_test' is missing. Did you forget to 'make check'?
=================================================
== Difference between 24 hours ago and now ==
=================================================
*** old.short Fri Mar 20 02:30:36 2009
--- new.short Fri Mar 20 02:59:50 2009
***************
*** 7,22 ****
Last 20 lines of verbose log follow echo
! mv -f .deps/memcheck_ppc32_linux-mc_leakcheck.Tpo .deps/memcheck_ppc32_linux-mc_leakcheck.Po
! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_malloc_wrappers.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo -c -o memcheck_ppc32_linux-mc_malloc_wrappers.o `test -f 'mc_malloc_wrappers.c' || echo './'`mc_malloc_wrappers.c
! mv -f .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Tpo .deps/memcheck_ppc32_linux-mc_malloc_wrappers.Po
! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_main.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_main.Tpo -c -o memcheck_ppc32_linux-mc_main.o `test -f 'mc_main.c' || echo './'`mc_main.c
! mv -f .deps/memcheck_ppc32_linux-mc_main.Tpo .deps/memcheck_ppc32_linux-mc_main.Po
! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_translate.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_translate.Tpo -c -o memcheck_ppc32_linux-mc_translate.o `test -f 'mc_translate.c' || echo './'`mc_translate.c
! mv -f .deps/memcheck_ppc32_linux-mc_translate.Tpo .deps/memcheck_ppc32_linux-mc_translate.Po
! gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../VEX/pub -DVGA_ppc32=1 -DVGO_linux=1 -DVGP_ppc32_linux=1 -m32 -O2 -g -Wmissing-prototypes -Wall -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wno-format-zero-length -fno-strict-aliasing -O2 -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -MT memcheck_ppc32_linux-mc_machine.o -MD -MP -MF .deps/memcheck_ppc32_linux-mc_machine.Tpo -c -o memcheck_ppc32_linux-mc_machine.o `test -f 'mc_machine.c' || echo './'`mc_machine.c
! mc_machine.c: In function âget_otrack_shadow_offset_wrkâ:
! mc_machine.c:343: error: âVexGuestPPC32Stateâ has no member named âguest_CIA_AT_SCâ
! make[3]: *** [memcheck_ppc32_linux-mc_machine.o] Error 1
! make[3]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck'
! make[2]: *** [all-recursive] Error 1
! make[2]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/memcheck'
make[1]: *** [all-recursive] Error 1
--- 7,22 ----
Last 20 lines of verbose log follow echo
! pub_core_commandline.h:40: error: expected â)â before âargcâ
! m_commandline.c:46: error: expected declaration specifiers or â...â before âHCharâ
! m_commandline.c: In function âadd_stringâ:
! m_commandline.c:48: error: âstrâ undeclared (first use in this function)
! m_commandline.c:48: error: (Each undeclared identifier is reported only once
! m_commandline.c:48: error: for each function it appears in.)
! m_commandline.c: At top level:
! m_commandline.c:56: error: expected â=â, â,â, â;â, âasmâ or â__attribute__â before â*â token
! m_commandline.c:95: error: expected â)â before â*â token
! m_commandline.c:153: error: expected â)â before âargcâ
! make[3]: *** [libcoregrind_ppc32_linux_a-m_commandline.o] Error 1
! make[3]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/coregrind'
! make[2]: *** [all] Error 2
! make[2]: Leaving directory `/net/home/bart/software/valgrind/nightly/valgrind/coregrind'
make[1]: *** [all-recursive] Error 1
***************
*** 25,27 ****
Running regression tests ... cd valgrind && perl tests/vg_regtest --all
! Job ID = 4029.cell-user.cell.buzz
! vg_regtest: 'arch_test' is missing. Did you forget to 'make check'?
--- 25,27 ----
Running regression tests ... cd valgrind && perl tests/vg_regtest --all
! Job ID = 4033.cell-user.cell.buzz
! vg_regtest: `/net/home/bart/software/valgrind/nightly/valgrind/./coregrind/valgrind' not found or not a file (/net/home/bart/software/valgrind/nightly/valgrind)
|
|
From: Tom H. <th...@cy...> - 2009-03-20 04:20:04
|
Nightly build on vauxhall ( x86_64, Fedora 10 ) started at 2009-03-20 03:20:15 GMT Results unchanged from 24 hours ago Checking out valgrind source tree ... done Configuring valgrind ... done Building valgrind ... done Running regression tests ... done Regression test results follow == 487 tests, 0 stderr failures, 0 stdout failures, 0 post failures == |
|
From: Tom H. <th...@cy...> - 2009-03-20 04:02:04
|
Nightly build on lloyd ( x86_64, Fedora 7 ) started at 2009-03-20 03:05:05 GMT 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 == 478 tests, 4 stderr failures, 0 stdout failures, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) |
|
From: Tom H. <th...@cy...> - 2009-03-20 03:47:10
|
Nightly build on mg ( x86_64, Fedora 9 ) started at 2009-03-20 03:10:08 GMT 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 == 484 tests, 4 stderr failures, 1 stdout failure, 0 post failures == exp-ptrcheck/tests/ccc (stderr) exp-ptrcheck/tests/preen_invars (stderr) exp-ptrcheck/tests/pth_create (stderr) exp-ptrcheck/tests/pth_specific (stderr) none/tests/linux/mremap2 (stdout) |
|
From: <sv...@va...> - 2009-03-20 00:28:54
|
Author: sewardj
Date: 2009-03-20 00:28:50 +0000 (Fri, 20 Mar 2009)
New Revision: 9468
Log:
Track renaming of guest_CIA_AT_SC to guest_IP_AT_SYSCALL (vex r1886).
Modified:
trunk/exp-ptrcheck/h_main.c
trunk/memcheck/mc_machine.c
Modified: trunk/exp-ptrcheck/h_main.c
===================================================================
--- trunk/exp-ptrcheck/h_main.c 2009-03-19 23:38:59 UTC (rev 9467)
+++ trunk/exp-ptrcheck/h_main.c 2009-03-20 00:28:50 UTC (rev 9468)
@@ -1533,7 +1533,7 @@
if (o == GOF(LR) && is4) goto exactly1;
if (o == GOF(CTR) && is4) goto exactly1;
if (o == GOF(CIA) && is4) goto none;
- if (o == GOF(CIA_AT_SC) && is4) goto none;
+ if (o == GOF(IP_AT_SYSCALL) && is4) goto none;
if (o == GOF(RESVN) && is4) goto none;
if (o == GOF(TISTART) && is4) goto none;
if (o == GOF(TILEN) && is4) goto none;
@@ -1697,7 +1697,7 @@
if (o == GOF(LR) && is8) goto exactly1;
if (o == GOF(CTR) && is8) goto exactly1;
if (o == GOF(CIA) && is8) goto none;
- if (o == GOF(CIA_AT_SC) && is8) goto none;
+ if (o == GOF(IP_AT_SYSCALL) && is8) goto none;
if (o == GOF(RESVN) && is8) goto none;
if (o == GOF(TISTART) && is8) goto none;
if (o == GOF(TILEN) && is8) goto none;
Modified: trunk/memcheck/mc_machine.c
===================================================================
--- trunk/memcheck/mc_machine.c 2009-03-19 23:38:59 UTC (rev 9467)
+++ trunk/memcheck/mc_machine.c 2009-03-20 00:28:50 UTC (rev 9468)
@@ -181,7 +181,7 @@
if (o == GOF(CTR) && sz == 8) return o;
if (o == GOF(CIA) && sz == 8) return -1;
- if (o == GOF(CIA_AT_SC) && sz == 8) return -1;
+ if (o == GOF(IP_AT_SYSCALL) && sz == 8) return -1;
if (o == GOF(RESVN) && sz == 8) return -1;
if (o == GOF(FPROUND) && sz == 4) return -1;
if (o == GOF(EMWARN) && sz == 4) return -1;
@@ -340,7 +340,7 @@
if (o == GOF(CTR) && sz == 4) return o;
if (o == GOF(CIA) && sz == 4) return -1;
- if (o == GOF(CIA_AT_SC) && sz == 4) return -1;
+ if (o == GOF(IP_AT_SYSCALL) && sz == 4) return -1;
if (o == GOF(RESVN) && sz == 4) return -1;
if (o == GOF(FPROUND) && sz == 4) return -1;
if (o == GOF(VRSAVE) && sz == 4) return -1;
|