Hi,

after fixing the dynamically-linked build I noticed that the boot
process hangs upon executing klog, i.e. the first dynamically-linked
app. After some investigation, I found that for some reason the async
futex is held at the entry to __main(), which causes the system to hang
on futex_down() called from fibril_mutex_lock() called from
vfs_absolutize() called from chdir() called from __main() at a later stage.

I can't think of an explanation for why the futex is held other than the
async framework is somehow being used before __main(). I can almost rule
out memory corruption or a failure to initialize the variable because
adding another futex next to async_futex works for that shadow futex (is
properly initialized and unlocked at the entry to __main()).

Any ideas? Am I assuming correctly that the PLT entries for calls to
__main() are not linked lazily?

Jakub

_______________________________________________
HelenOS-devel mailing list
HelenOS-devel@lists.modry.cz
http://lists.modry.cz/listinfo/helenos-devel

Reply via email to