From: Hongyang Yang <yanghy@cn.fujitsu.com>
To: xen-devel@lists.xen.org
Cc: ian.campbell@citrix.com, wency@cn.fujitsu.com,
andrew.cooper3@citrix.com, yunhong.jiang@intel.com,
eddie.dong@intel.com, rshriram@cs.ubc.ca,
ian.jackson@eu.citrix.com, laijs@cn.fujitsu.com
Subject: Re: [PATCH v18 00/11] Remus/Libxl: Remus network buffering and drbd disk
Date: Thu, 7 Aug 2014 09:17:09 +0800 [thread overview]
Message-ID: <53E2D395.20403@cn.fujitsu.com> (raw)
In-Reply-To: <1406539445-12708-1-git-send-email-yanghy@cn.fujitsu.com>
Ping!
在 07/28/2014 05:23 PM, Yang Hongyang 写道:
> This patch series adds support for network buffering and drbd disk
> in the Remus codebase in libxl.
>
> the code is also hosted on github:
> url: https://github.com/macrosheep/xen/tree/remus-v18
>
> Changes in v18:
> Merge match() and setup() api.
> Reuse libxl__multidev and libxl__ao_device.
> Commit messages and code comments improved. Thanks to Shriram.
> Rebased.
>
> Changes in v17:
> Make remus device abstract layer more generic.
> Addressed Ian J's comments.
>
> Changes in v16:
> Merge libxl__remus_state and libxl__remus_device_state.
> Pass the ops to device abstract layer instead of defined it in the layer.
> Optimized subkind ops APIs.
> Addressed Ian J's comments.
> Rebased.
>
> Changes in v15:
> The first patch in v14 has been taken, so remove it from the patchset.
> Add a patch to Update maintained files of REMUS.
> Rebased.
>
> Changes in v14:
> Addressed IanJ's comments.
> Rebased.
>
> Changes in v13:
> Addressed Konrad's comments.
> Rebased.
>
> Changes in v12:
> Add disk buffering cmdline switch.
>
> Changes in v11:
> Addressed comments from Ian J and Shriram.
> Add drbd disk implement into this patch series.
>
> Changes in V10:
> Restructured the whole patch series.
> Introduce the remus device abstract layer.
> Make remus checkpoint asynchronous.
>
> Changes in V9:
> Use async exec script api to exec scripts.
>
> Changes in V8:
> Applied some comments(by IanJ).
> Merge some struct definitions to it's implementation.
> (2/3/5 in V7 => 3 in V8)
>
> Changes in V7:
> Applied missing comments(by IanJ).
> Applied Shriram comments.
>
> merge netbufering tangled setup/teardown code into one patch.
> (2/6/8 in V6 => 5 in V7. 9/10 in V6 => 7 in V7)
>
> Changes in V6:
> Applied Ian Jackson's comments of V5 series.
> the [PATCH 2/4 V5] is split by small functionalities.
>
> [PATCH 4/4 V5] --> [PATCH 13/13] netbuffer is default enabled.
>
> Changes in V5:
>
> Merge hotplug script patch (2/5) and hotplug script setup/teardown
> patch (3/5) into a single patch.
>
> Changes in V4:
>
> [1/5] Remove check for libnl command line utils in autoconf checks
>
> [2/5] minor nits
>
> [3/5] define LIBXL_HAVE_REMUS_NETBUF in libxl.h
>
> [4/5] clean ups. Make the usleep in checkpoint callback asynchronous
>
> [5/5] minor nits
>
> Changes in V3:
> [1/5] Fix redundant checks in configure scripts
> (based on Ian Campbell's suggestions)
>
> [2/5] Introduce locking in the script, during IFB setup.
> Add xenstore paths used by netbuf scripts
> to xenstore-paths.markdown
>
> [3/5] Hotplug scripts setup/teardown invocations are now asynchronous
> following IanJ's feedback. However, the invocations are still
> sequential.
>
> [5/5] Allow per-domain specification of netbuffer scripts in xl remus
> commmand.
>
> And minor nits throughout the series based on feedback from
> the last version
>
> Changes in V2:
> [1/5] Configure script will automatically enable/disable network
> buffer support depending on the availability of the appropriate
> libnl3 version. [If libnl3 is unavailable, a warning message will be
> printed to let the user know that the feature has been disabled.]
>
> use macros from pkg.m4 instead of pkg-config commands
> removed redundant checks for libnl3 libraries.
>
> [3,4/5] - Minor nits.
>
> Version 1:
>
> [1/5] Changes to autoconf scripts to check for libnl3. Add linker flags
> to libxl Makefile.
>
> [2/5] External script to setup/teardown network buffering using libnl3's
> CLI. This script will be invoked by libxl before starting Remus.
> The script's main job is to bring up an IFB device with plug qdisc
> attached to it. It then re-routes egress traffic from the guest's
> vif to the IFB device.
>
> [3/5] Libxl code to invoke the external setup script, followed by netlink
> related setup to obtain a handle on the output buffers attached
> to each vif.
>
> [4/5] Libxl interaction with network buffer module in the kernel via
> libnl3 API.
>
> [5/5] xl cmdline switch to explicitly enable network buffering when
> starting remus.
>
>
> Few things to note(by shriram):
>
> a) Based on previous email discussions, the setup/teardown task has
> been moved to a hotplug style shell script which can be customized as
> desired, instead of implementing it as C code inside libxl.
>
> b) Libnl3 is not available on NetBSD. Nor is it available on CentOS
> (Linux). So I have made network buffering support an optional feature
> so that it can be disabled if desired.
>
> c) NetBSD does not have libnl3. So I have put the setup script under
> tools/hotplug/Linux folder.
>
> thanks
>
> Legend:
> A - acked
> D - previous acked, but new change introduced so acked-by dropped
> M - Modified
> S - the same version as last round
> No marker - new patch
>
> Yang Hongyang (11):
> libxl: introduce libxl__multidev_prepare_with_aodev
> libxl: add support for async. function calls when using
> libxl__ao_device
> A autoconf: add libnl3 dependency for Remus network buffering support
> M libxl/remus: introduce an abstract Remus device layer
> M libxl/remus: setup and control network output buffering
> M libxl/remus: setup and control disk replication for DRBD backends
> xl/remus: cmdline switch to explicitly enable unsafe configurations
> M xl/remus: cmdline switches and config vars to control network
> buffering
> M xl/remus: add a cmdline switch to disable disk replication
> S libxl/remus: add LIBXL_HAVE_REMUS to indicate Remus support in libxl
> M MAINTAINERS: update maintained files of Remus
>
> MAINTAINERS | 7 +
> README | 4 +
> config/Tools.mk.in | 4 +
> docs/README.remus | 6 +
> docs/man/xl.conf.pod.5 | 6 +
> docs/man/xl.pod.1 | 30 +-
> docs/misc/xenstore-paths.markdown | 4 +
> tools/configure.ac | 16 +
> tools/hotplug/Linux/Makefile | 2 +
> tools/hotplug/Linux/block-drbd-probe | 85 ++++++
> tools/hotplug/Linux/remus-netbuf-setup | 237 +++++++++++++++
> tools/libxl/Makefile | 15 +
> tools/libxl/libxl.c | 65 +++-
> tools/libxl/libxl.h | 6 +
> tools/libxl/libxl_device.c | 14 +-
> tools/libxl/libxl_dom.c | 172 ++++++++++-
> tools/libxl/libxl_internal.h | 204 ++++++++++++-
> tools/libxl/libxl_netbuffer.c | 521 +++++++++++++++++++++++++++++++++
> tools/libxl/libxl_nonetbuffer.c | 56 ++++
> tools/libxl/libxl_remus_device.c | 302 +++++++++++++++++++
> tools/libxl/libxl_remus_disk_drbd.c | 260 ++++++++++++++++
> tools/libxl/libxl_types.idl | 6 +
> tools/libxl/xl.c | 4 +
> tools/libxl/xl.h | 1 +
> tools/libxl/xl_cmdimpl.c | 43 ++-
> tools/libxl/xl_cmdtable.c | 11 +-
> 26 files changed, 2042 insertions(+), 39 deletions(-)
> create mode 100755 tools/hotplug/Linux/block-drbd-probe
> create mode 100644 tools/hotplug/Linux/remus-netbuf-setup
> create mode 100644 tools/libxl/libxl_netbuffer.c
> create mode 100644 tools/libxl/libxl_nonetbuffer.c
> create mode 100644 tools/libxl/libxl_remus_device.c
> create mode 100644 tools/libxl/libxl_remus_disk_drbd.c
>
--
Thanks,
Yang.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
prev parent reply other threads:[~2014-08-07 1:17 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-28 9:23 [PATCH v18 00/11] Remus/Libxl: Remus network buffering and drbd disk Yang Hongyang
2014-07-28 9:23 ` [PATCH v18 01/11] libxl: introduce libxl__multidev_prepare_with_aodev Yang Hongyang
2014-07-29 17:21 ` Ian Jackson
2014-07-28 9:23 ` [PATCH v18 02/11] libxl: add support for async. function calls when using libxl__ao_device Yang Hongyang
2014-07-29 17:24 ` Ian Jackson
2014-07-30 8:45 ` Hongyang Yang
2014-07-28 9:23 ` [PATCH v18 03/11] autoconf: add libnl3 dependency for Remus network buffering support Yang Hongyang
2014-07-28 9:23 ` [PATCH v18 04/11] libxl/remus: introduce an abstract Remus device layer Yang Hongyang
2014-08-07 18:30 ` Ian Jackson
2014-08-27 1:46 ` Hongyang Yang
2014-08-27 2:21 ` Ian Jackson
2014-08-27 2:27 ` Hongyang Yang
2014-07-28 9:23 ` [PATCH v18 05/11] libxl/remus: setup and control network output buffering Yang Hongyang
2014-07-28 9:24 ` [PATCH v18 06/11] libxl/remus: setup and control disk replication for DRBD backends Yang Hongyang
2014-07-28 9:24 ` [PATCH v18 07/11] xl/remus: cmdline switch to explicitly enable unsafe configurations Yang Hongyang
2014-07-28 9:24 ` [PATCH v18 08/11] xl/remus: cmdline switches and config vars to control network buffering Yang Hongyang
2014-07-28 9:24 ` [PATCH v18 09/11] xl/remus: add a cmdline switch to disable disk replication Yang Hongyang
2014-07-28 9:24 ` [PATCH v18 10/11] libxl/remus: add LIBXL_HAVE_REMUS to indicate Remus support in libxl Yang Hongyang
2014-07-28 9:24 ` [PATCH v18 11/11] MAINTAINERS: update maintained files of Remus Yang Hongyang
2014-08-07 1:17 ` Hongyang Yang [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53E2D395.20403@cn.fujitsu.com \
--to=yanghy@cn.fujitsu.com \
--cc=andrew.cooper3@citrix.com \
--cc=eddie.dong@intel.com \
--cc=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=laijs@cn.fujitsu.com \
--cc=rshriram@cs.ubc.ca \
--cc=wency@cn.fujitsu.com \
--cc=xen-devel@lists.xen.org \
--cc=yunhong.jiang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).