[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