qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RFC PATCH] configure: remove --enable-replication/--disable-replication
Date: Thu, 2 Feb 2017 15:15:46 +0000	[thread overview]
Message-ID: <20170202151543.GD4603@work-vm> (raw)
In-Reply-To: <20170202150530.1025-1-pbonzini@redhat.com>

* Paolo Bonzini (pbonzini@redhat.com) wrote:
> The replication feature is a small amount of code, does not
> require any external library and unless used does not add
> anything to the guest's attack surface.  Since any extra
> configure option affects maintainability on the other hand
> and is subject to bit rot, I think there is no need to
> make it configurable.
> 
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>         Sending as RFC to start discussion because I know
>         Dave Gilbert disagrees. :)

Yep!
I started thinking about this for two other cases:
   a) I noticed you'd removed the config for COLO

   b) I was thinking of adding a config to disable old-school
      block migration which we've had downstream for ages.

  I think people like being able to disable features they're not
using in their builds; certainly we do downstream and if we do I don't
see why others won't - perhaps for different reasons.

  While it's true block replication probably doesn't add to the
guest-visible attack surface, if someone was trying to audit
what they were running it would still be something they'd have
to check, and which it's easier if compiled out.

Dave

>  Makefile.objs          |  2 +-
>  block/Makefile.objs    |  2 +-
>  configure              | 11 -----------
>  tests/Makefile.include |  2 +-
>  4 files changed, 3 insertions(+), 14 deletions(-)
> 
> diff --git a/Makefile.objs b/Makefile.objs
> index 01cef86..d834906 100644
> --- a/Makefile.objs
> +++ b/Makefile.objs
> @@ -15,7 +15,7 @@ block-obj-$(CONFIG_POSIX) += aio-posix.o
>  block-obj-$(CONFIG_WIN32) += aio-win32.o
>  block-obj-y += block/
>  block-obj-y += qemu-io-cmds.o
> -block-obj-$(CONFIG_REPLICATION) += replication.o
> +block-obj-y += replication.o
>  
>  block-obj-m = block/
>  
> diff --git a/block/Makefile.objs b/block/Makefile.objs
> index c6bd14e..fd099a6 100644
> --- a/block/Makefile.objs
> +++ b/block/Makefile.objs
> @@ -24,7 +24,7 @@ block-obj-$(CONFIG_LIBSSH2) += ssh.o
>  block-obj-y += accounting.o dirty-bitmap.o
>  block-obj-y += write-threshold.o
>  block-obj-y += backup.o
> -block-obj-$(CONFIG_REPLICATION) += replication.o
> +block-obj-y += replication.o
>  
>  block-obj-y += crypto.o
>  
> diff --git a/configure b/configure
> index 86fd833..0cb124e 100755
> --- a/configure
> +++ b/configure
> @@ -320,7 +320,6 @@ libssh2=""
>  numa=""
>  tcmalloc="no"
>  jemalloc="no"
> -replication="yes"
>  
>  # parse CC options first
>  for opt do
> @@ -1166,10 +1165,6 @@ for opt do
>    ;;
>    --enable-jemalloc) jemalloc="yes"
>    ;;
> -  --disable-replication) replication="no"
> -  ;;
> -  --enable-replication) replication="yes"
> -  ;;
>    *)
>        echo "ERROR: unknown option $opt"
>        echo "Try '$0 --help' for more information"
> @@ -1402,7 +1397,6 @@ disabled with --disable-FEATURE, default is enabled if available:
>    numa            libnuma support
>    tcmalloc        tcmalloc support
>    jemalloc        jemalloc support
> -  replication     replication support
>  
>  NOTE: The object files are built at the place where configure is launched
>  EOF
> @@ -5113,7 +5107,6 @@ echo "NUMA host support $numa"
>  echo "tcmalloc support  $tcmalloc"
>  echo "jemalloc support  $jemalloc"
>  echo "avx2 optimization $avx2_opt"
> -echo "replication support $replication"
>  
>  if test "$sdl_too_old" = "yes"; then
>  echo "-> Your SDL version is too old - please upgrade to have SDL support"
> @@ -5711,10 +5704,6 @@ if test "$have_rtnetlink" = "yes" ; then
>    echo "CONFIG_RTNETLINK=y" >> $config_host_mak
>  fi
>  
> -if test "$replication" = "yes" ; then
> -  echo "CONFIG_REPLICATION=y" >> $config_host_mak
> -fi
> -
>  if test "$have_af_vsock" = "yes" ; then
>    echo "CONFIG_AF_VSOCK=y" >> $config_host_mak
>  fi
> diff --git a/tests/Makefile.include b/tests/Makefile.include
> index 33b4f88..77dc08f 100644
> --- a/tests/Makefile.include
> +++ b/tests/Makefile.include
> @@ -115,7 +115,7 @@ check-unit-y += tests/test-crypto-xts$(EXESUF)
>  check-unit-y += tests/test-crypto-block$(EXESUF)
>  gcov-files-test-logging-y = tests/test-logging.c
>  check-unit-y += tests/test-logging$(EXESUF)
> -check-unit-$(CONFIG_REPLICATION) += tests/test-replication$(EXESUF)
> +check-unit-y += tests/test-replication$(EXESUF)
>  check-unit-y += tests/test-bufferiszero$(EXESUF)
>  gcov-files-check-bufferiszero-y = util/bufferiszero.c
>  check-unit-y += tests/test-uuid$(EXESUF)
> -- 
> 2.9.3
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK

  reply	other threads:[~2017-02-02 15:15 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-02 15:05 [Qemu-devel] [RFC PATCH] configure: remove --enable-replication/--disable-replication Paolo Bonzini
2017-02-02 15:15 ` Dr. David Alan Gilbert [this message]
2017-02-03 15:00 ` Stefan Hajnoczi
2017-02-03 17:08   ` Paolo Bonzini
2017-02-06 11:57     ` Dr. David Alan Gilbert
2017-03-03 20:34       ` Bruce Rogers
2017-03-03 21:26         ` Paolo Bonzini
2017-03-06  9:08         ` Dr. David Alan Gilbert
2017-03-06 10:03           ` Zhang Chen
2017-03-06 12:54             ` Paolo Bonzini
2017-03-07  3:50               ` Zhang Chen

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=20170202151543.GD4603@work-vm \
    --to=dgilbert@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /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).