On Jan 16, 2013, at 5:21 PM, <Paul_Koning at Dell.com>
wrote:
On Jan 16, 2013, at 3:17 PM, Cory Smelosky wrote:
On 15 Jan 2013, at 20:25, Jordi Guillaumes i Pons <jg at jordi.guillaumes.name>
wrote:
El 15/01/2013, a les 20:27, Paul_Koning at
Dell.com va escriure:
When I build it with the default build settings (async I/O enabled) both PDP11 and VAX
hang at boot. Built with NOASYNCH and it runs fine. I haven't tried other
platforms.
I have. Mark is working on the hang issues. He has fixed some of the bugs, but that asynch
code seems to be specially hard to debug. BTW it is a multicore-multiprocessor issue also
observed in other operating systems.
I'm curious if anyone else has tried it, or has ideas of what's wrong here. When
it gets in this state, I have to kill the process; it won't answer interrupts or even
SIGTERM.
I run it with asynch disabled for the time being.
When I try that, it fails to link.
Undefined symbols for architecture x86_64:
"_clock_gettime", referenced from:
_todr_wr in ccGqWyaE.o
_todr_resync in ccGqWyaE.o
_todr_rd in ccGqWyaE.o
ld: symbol(s) not found for architecture x86_64
I noticed that one. Find clock_gettime. It's currently conditional on two things
one of which is async support. Take away that second check.
paul
I should have just looked it up first rather than answering from memory. Here is the
fix:
diff --git a/sim_timer.c b/sim_timer.c
index 6044643..8c1e9e7 100644
--- a/sim_timer.c
+++ b/sim_timer.c
@@ -402,7 +402,7 @@ if (tim > SIM_IDLE_MAX)
tim = 0;
return tim;
}
-#if !defined(_POSIX_SOURCE) && defined(SIM_ASYNCH_IO)
+#if !defined(_POSIX_SOURCE)
#ifdef NEED_CLOCK_GETTIME
typedef int clockid_t;
int clock_gettime(clockid_t clk_id, struct timespec *tp)
paul