From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Yang Hongyang <yanghy@cn.fujitsu.com>
Cc: ian.campbell@citrix.com, wency@cn.fujitsu.com,
ian.jackson@eu.citrix.com, yunhong.jiang@intel.com,
eddie.dong@intel.com, xen-devel@lists.xen.org,
rshriram@cs.ubc.ca, laijs@cn.fujitsu.com
Subject: Re: [PATCH for-4.5 v20 00/12] Remus/Libxl: Remus network buffering and drbd disk
Date: Thu, 25 Sep 2014 15:28:31 -0400 [thread overview]
Message-ID: <20140925192831.GJ29663@laptop.dumpdata.com> (raw)
In-Reply-To: <1411625784-4060-1-git-send-email-yanghy@cn.fujitsu.com>
On Thu, Sep 25, 2014 at 02:16:12PM +0800, Yang Hongyang wrote:
> 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-v20
I only had one question in regards to patch:
[PATCH for-4.5 v20 07/12] xl/remus: change bool to defbool
Otherwise all the other patches that did not have an Review
from me look good (and as such I have replied with 'Reviewed-by'
on them).
All of those that had Ian's Ack on them, looked OK to me.
I didn't respond 'Acked-by' on them as I figured I would do
it here.
Regardless of the #7 question I believe the patches can
go in 4.5 and can have 'Acked-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>'
on them.
Thank you!
>
> Changes in v20:
> Rebased.
>
> Changes in v19:
> Use defbool for cmdline switch.
> Restruct of subkind init and cleanup operation.
> Use libxl__device_kind instead of libxl__remus_device_kind
> Fix a layer violation issue pointed out by IanJ.
> Other minor fixes.
> Rebased to the latest staging tree.
>
> 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,
> Yang.
>
> 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 (12):
> A libxl: introduce libxl__multidev_prepare_with_aodev
> A libxl: Extend libxl__ao_device with a libxl__ev_child member
> A autoconf: add libnl3 dependency for Remus network buffering support
> S libxl/remus: introduce an abstract Remus device layer
> A libxl/remus: setup and control network output buffering
> A libxl/remus: setup and control disk replication for DRBD backends
> S xl/remus: change bool to defbool
> S xl/remus: cmdline switch to explicitly enable unsafe configurations
> A xl/remus: cmdline switches and config vars to control network
> buffering
> A xl/remus: add a cmdline switch to disable disk replication
> A libxl/remus: add LIBXL_HAVE_REMUS to indicate Remus support in libxl
> S MAINTAINERS: update maintained files of Remus
>
> MAINTAINERS | 7 +
> README | 4 +
> config/Tools.mk.in | 4 +
> docs/README.remus | 16 +
> 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 | 87 ++++++
> tools/hotplug/Linux/remus-netbuf-setup | 230 +++++++++++++++
> tools/libxl/Makefile | 15 +
> tools/libxl/libxl.c | 75 ++++-
> tools/libxl/libxl.h | 6 +
> tools/libxl/libxl_device.c | 14 +-
> tools/libxl/libxl_dom.c | 170 ++++++++++-
> tools/libxl/libxl_internal.h | 195 ++++++++++++-
> tools/libxl/libxl_netbuffer.c | 517 +++++++++++++++++++++++++++++++++
> tools/libxl/libxl_nonetbuffer.c | 54 ++++
> tools/libxl/libxl_remus_device.c | 296 +++++++++++++++++++
> tools/libxl/libxl_remus_disk_drbd.c | 257 ++++++++++++++++
> tools/libxl/libxl_types.idl | 10 +-
> tools/libxl/libxl_types_internal.idl | 2 +
> tools/libxl/xl.c | 4 +
> tools/libxl/xl.h | 1 +
> tools/libxl/xl_cmdimpl.c | 42 ++-
> tools/libxl/xl_cmdtable.c | 11 +-
> 27 files changed, 2030 insertions(+), 45 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
>
> --
> 1.9.1
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel
next prev parent reply other threads:[~2014-09-25 19:28 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-25 6:16 [PATCH for-4.5 v20 00/12] Remus/Libxl: Remus network buffering and drbd disk Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 01/12] libxl: introduce libxl__multidev_prepare_with_aodev Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 02/12] libxl: Extend libxl__ao_device with a libxl__ev_child member Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 03/12] autoconf: add libnl3 dependency for Remus network buffering support Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 04/12] libxl/remus: introduce an abstract Remus device layer Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 05/12] libxl/remus: setup and control network output buffering Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 06/12] libxl/remus: setup and control disk replication for DRBD backends Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 07/12] xl/remus: change bool to defbool Yang Hongyang
2014-09-25 19:21 ` Konrad Rzeszutek Wilk
2014-09-25 20:03 ` Shriram Rajagopalan
2014-09-25 23:38 ` Ian Jackson
2014-09-26 14:02 ` Konrad Rzeszutek Wilk
2014-09-25 6:16 ` [PATCH for-4.5 v20 08/12] xl/remus: cmdline switch to explicitly enable unsafe configurations Yang Hongyang
2014-09-25 19:23 ` Konrad Rzeszutek Wilk
2014-09-25 6:16 ` [PATCH for-4.5 v20 09/12] xl/remus: cmdline switches and config vars to control network buffering Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 10/12] xl/remus: add a cmdline switch to disable disk replication Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 11/12] libxl/remus: add LIBXL_HAVE_REMUS to indicate Remus support in libxl Yang Hongyang
2014-09-25 6:16 ` [PATCH for-4.5 v20 12/12] MAINTAINERS: update maintained files of Remus Yang Hongyang
2014-09-25 19:24 ` Konrad Rzeszutek Wilk
2014-09-25 19:28 ` Konrad Rzeszutek Wilk [this message]
2014-09-26 5:40 ` [PATCH for-4.5 v20 00/12] Remus/Libxl: Remus network buffering and drbd disk Hongyang Yang
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=20140925192831.GJ29663@laptop.dumpdata.com \
--to=konrad.wilk@oracle.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=yanghy@cn.fujitsu.com \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.