[EROS-Arch] Questioning need for Call Count

Jonathan S. Shapiro shap@eros-os.org
Fri, 10 Nov 2000 10:39:17 -0500


> This was my largest concern -- however, if there is a mismatch in
> expected reply numbers, what shall the library do? (And furthermore,
> what should the client do when it discovers a mismatch?)

Hmm. Good question.

If the client receives a misnumbered reply, it means that one of the servers
they have called at some point has a bug, but it isn't clear which one.
Yuck.

My original thought was that the client should ignore the reply and
immediately invoke a kernel capability that causes it to re-enter the
waiting state.

Actually, the check that the numbers match can still be performed in the IPC
path; the client need never see the bogus message. The real problems in the
IPC path are (a) the call count gets stored in a special field in the node,
and (b) the resume capabilities have to be demolished. The comparison itself
isn't really the source of the problem.

Jonathan