Hi Jeff, Thanks again for the patch. I ended up doing something slightly different, but reading through the code and looking at your changes helped me arrive at a solution.
The primary problem I face with your patch is that the timer ticks are not interrupting at even intervals. While things /do/ work the way we discussed, the clock was slipping all over the place. Sleeps inside the VM were in sync and preserved when the VM was paused, but their real-time value was intrinsically unreliable. So, I think that syncing to the host clock in /some/ way is a good thing. In my original solution, where I used {get,set}timeofday to manage the clock (with UML_REAL_TIME_CLOCK disabled), the real problem (I think) is that local_offset was overflowing. Because (in my case) the UML clock always lags the host clock, I simply switched the semantics of local_offset to be "how far behind" instead of "how far ahead". This seems to work (hack though it may be). The problem I had with my original solution is that, although some sleeps worked, others didn't. I haven't seen this problem since fixing local_offset. I'll be working with this more over the weekend, and I'll let you know if things break. For now, I need to divert my energies towards homework. Thanks again for your quick responses! Greg ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ User-mode-linux-user mailing list User-mode-linux-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-user