[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v10] remus drbd: Implement remus drbd replicated disk
Shriram Rajagopalan writes ("Re: [PATCH v10] remus drbd: Implement remus drbd replicated disk"): > It does. But the design is such that the disk and memory checkpoints are > simultaneously transmitted. So by the time this call is made, the ack is > already in the system. One packet might get lost while the other gets through. Risking locking up the whole of the process is unfortunately not acceptable. > -- this is the common case. Covers about 90% of the calls (since disk traffic > is pretty low compared to memory checkpoint). > > > What if the network is broken ? Might it not then delay indefinitely ? > > Nope. I designed the relevant drbd code such that the ioctl wait times out > (configurable) in worst case, returning an error. The time out is generally > about 300ms. This code path is exercised only during failures. If you think this ioctl will, when there is no error, complete immediately, can we have a non-blocking versiion, and fall back to the fork trick ? Or better still, is there something we could poll() on to find out when the ioctl will definitely complete ? > So, a one-time error condition and few slow checkpoints out of an indefinite > number of checkpoints don't warrant a fork per ioctl call (which usually > returns immediately). libxl might be handling a large number of domains. If libxl blocks, a lot of everything else might stall. (Including checkpoints of other domains, if you care about that.) Thanks, Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |