(Illustration by Gaich Muramatsu)
> The open and close upcalls from the kernel to venus seems to want the > process group ID to be given from the kernel. > Why does venus want the process group of the calling process ? That is for the application specific resolver mechanism (ASR). The idea is that when the client detects a conflict it starts a helper process which tries to resolve the conflict. In the mean time it blocks the original (and any other requests) to the volume that is being repaired. So venus uses the process group id to identify which upcalls are related to the ASR process and which are not, so that it can block normal users while letting the ASR fork off helper processes and such to assist in resolving the conflict. If the conflict is successfully repaired by the ASR, the original request that discovered the conflict is allowed to complete. So ideally the user never even notices that there was a problem (except for the obvious delay). JanReceived on 2006-05-15 18:29:13