Hello, after aplying a patch sent by Jean (thanks Jean!) everything seemed
to work just fine. Except for one thing. After restarting the stopped
thread, with l4_thread_ex_regs, if main() would try to do a getchar() (for
instance) the re-started thread would stop ... if I change the
getchar() for a for(;;); everyting works just fine.
And theres one more thing, please if someone can tell me if this behaviuor
is correct or not, when stopping a thread w/l4_thread_ex_regs lets say we
stop it by changing its eip to a func.
always_release() {
for(;;)
l4_thread_switch(L4_NIL_ID);
}
If one were to leave the original esp, when re-starting the original
thread, by changing its eip to the original func., all the values
contained in the stack were to be clobbered ... now ... is this normal
? should l4_thread_switch() change the values in the stack ? (of course, a
workaround to this is to declare a char release_stack[] and use it when
stopping the thread as its new stack).
Ciao.
Cervi~no Ulises <kermit(a)tower.com.ar> <ulises(a)rosario.linux.org.ar>
...............................................................................
"Contrary to popular opinion, Unix is user friendly, It just happens to be
very selective about who it makes friends with."