[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 3 of 5 V2] tools/libxl: setup/teardown Remus network buffering
On Wed, Sep 4, 2013 at 12:16 PM, Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> wrote:
Shriram Rajagopalan writes ("[Xen-devel] [PATCH 3 of 5 V2] tools/libxl: setup/teardown Remus network buffering"): Its actually fixed in the next patch in the same series.
Thats true. But this was not meant to be an ao (see explanation at end of this email). Also I don't see where this other error handling code is. Sorry. This was copy pasted from code in device_hotplug(). I couldn't find a simple fork & exec abstraction. The libxl_ev_child_fork seemed to be
the only option.
It actually does. Atleast based on the code in libxl_exec.c which uses a select() call to wait on xenstore fds.
It arranges A script per netbuf. Running them in parallel is an overkill, since the remus setup is a one-time task and the average domain is expected to have few interfaces.
Besides, the script has no waits. It just issues a bunch of shell commands that don't block
See answer above for running in parallel. In terms of running this asynchronously, I had a comment in this file explaining why I decided to go the synchronous route.
Basically, the setup and teardown are part of the remus API call, which is already asynchronous. The remus external API (libxl_domain_remus_start) returns after starting remus.
It goes like this: setup scripts suspend_domain (which basically launches save_domain helper process) return AO_IN_PROGRESS The setup scripts are have no long running operations. They complete in jiffy
(adding a bunch of tc rules to interfaces) The AO callback in libxl.c (named "remus_replication_failure_cb" [beginning of this patch]), is called when the backup fails, i.e. when the replication
operations fail (such as write() calls). The AO callback calls the above teardown function. I remember reading in the comments that an AO op should not be issued from an AO callback
(please correct me if I am wrong). What happens if I use "xl destroy" to destroy a domain which is being One of the replication steps (domain suspend or domain resume) would fail. This would result in the AO callback being invoked, which in turn invokes the external scripts. The scripts fail silently if the vif interface cannot be found,
but they go ahead and remove the IFB device, and so on. Thanks, _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |