Re: race condition?
tab-mTI/[email protected] (Vincent Hanquez)
| Newsgroups | gmane.linux.cluster.openmosix.devel |
|---|---|
| Message-ID | <[email protected]> |
On Mon, May 08, 2006 at 11:59:48AM -0600, Matt Dew wrote: > What are the thoughts on the condition where the remote node sends a > syscall back to the home node and then receives a migrate home command > before the syscall response? Is this the same problem (out of > sync-ness) that is causing the received -32 of 8 errors? > > What is the best way to fix this? > 1) Put in some ack/nack commands to ensure both remote and deputy are > in the same place? it's actually going further than that. this kind of protocol is totally asynced. However, everything expect sync stuff. like "I'm sending syscall X to you, and give me back the result", "sending page X, then page Y, ..." ... Most of this is protected by the fact that there's one connection per task, but let say you want to tell the deputy that there's an error just after receiving page X, you can't since the deputy is not expecting data. > 2) Open two ports. One for migration stuff and another for syscalls? a command port and a data port would probably be better here than a migration and syscall one. but I'd rather not favor that. 2 ports per process ... > 3) Modify the functions to handle these cases? > 4) Add a counter field to the structs for bookkeeping; so both remote > and deputy know which response goes with which command and then merge > the calling functions? 4 is probably the best here. You'll end up beeing able to put to sleep process for event number X, instead of putting to sleep process until there's data to read on the port. However The ultimate move is to move the whole migration and remote process handling in userspace. That's just crazy to be in kernel and totally unneeded. At the end it will provide something far more stable, clean and hackable, where openMosix is a totally userspace thing (with very small kernel module, that have actually almost nothing to do with oM). Cheers, -- Vincent Hanquez ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642