Hi,

I started to experience deadlock while booting HelenOS. It does not
happen every time, and when I add some debug prints, the deadlock
disappears completely.

The issue starts at ps2mouse driver, which adds mouse function from its
device_add operation. This remote call goes all the way to fun_online,
in which it is holding the writelock (blocking other drivers) and,
because the function is exposed, probably waiting inside
loc_register_tree_function, respectively in loc_service_register.

Looking at this function, it seems to be very similar to what Jakub
Jermar describes at:
        
http://jakubsuniversalblog.blogspot.cz/2011/09/debugging-file-system-hang-using.html?q=deadlock

As far as I understand the issue, this shall not be the case - this is
the sender, not the receiver, and there is no cycle of messages waiting
for themselves. But after swapping the order of exch release and waiting
for answer, the deadlock no longer occurs.

Can someone please confirm, that the order there is correct?

Thanks,
Ondra Hlavatý

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

Reply via email to