[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Possible error restoring machine
On Wed, May 23, 2012 at 5:39 AM, Frediano Ziglio <frediano.ziglio@xxxxxxxxxx> wrote: > I noted a possible problem restoring a machine. > > In xc_domain_restore (xc_domain_restore.c) if it's not the last > checkpoint we set O_NONBLOCK flag (search for fcntl) that we can call > pagebuf_get or just load other pages (see following "goto loadpages;" > line). > Now we could ending up calling xc_tmem_restore/xc_tmem_restore_extra > (xc_tmem.c) which call read_extract (xc_private.c) on the same non > blocking socket/file but read_extract does not handle EAGAIN/EWOULDBLOCK > (both can be returned on non blocking socket depending on file type and > Unix/Linux version) leading to a failure. > Does this make sense or is it impossible ?? > It certainly is possible. But again, I have never seen anyone use tmem with
Remus. I dont even know if it would work properly, even if we fix the read_exact code to handle non-blocking fds. For the normal live-migration scenario, the O_NONBLOCK change does not happen.
So, RDEXACT == rdexact == read_exact, output wise. > Also note that rdexact (xc_domain_restore.c) handle data timeout but we > can still block in read_exact called by > xc_tmem_restore/xc_tmem_restore_extra. > Yep. Only in Remus case. As stated above, havent come across anyone using Remus + tmem and/or dont know if it would work properly. I dont know the semantics of tmem enough to comment on remus+tmem, whether
it makes sense or not, etc.. > Last note on rdexact, isn't 1 second (HEARTBEAT_MS) too small if there > are network problems? > This wont be a problem for live migration. Because that timeout code
is within the if (ctx->completed) { } block. It only becomes active when Remus is enabled i.e. ctx->last_checkpoint = 0. Otherwise, the read call is still blocking. > Frediano > > _______________________________________________ > Xen-devel mailing list > Xen-devel@xxxxxxxxxxxxx > http://lists.xen.org/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |