Message ID | 20210625112741.12566-1-alex.bennee@linaro.org |
---|---|
State | New |
Headers | show |
Series | [RFC] tcg/plugins: enable by default for TCG builds | expand |
On Fri, Jun 25, 2021 at 8:27 AM Alex Bennée <alex.bennee@linaro.org> wrote: > > Aside from a minor bloat to file size the ability to have TCG plugins > has no real impact on performance unless a plugin is actively loaded. > Even then the libempty.so plugin shows only a minor degradation in > performance caused by the extra book keeping the TCG has to do to keep > track of instructions. As it's a useful feature lets just enable it by > default and reduce our testing matrix a little. > > Cc: Paolo Bonzini <pbonzini@redhat.com> > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > --- > docs/devel/tcg-plugins.rst | 3 ++- > configure | 2 +- > .gitlab-ci.d/buildtest.yml | 23 ----------------------- > 3 files changed, 3 insertions(+), 25 deletions(-) > As far as code is concerned, it looks good to me. Reviewed-by: WIllian Rampazzo <willianr@redhat.com>
On 25/06/2021 13.27, Alex Bennée wrote: > Aside from a minor bloat to file size the ability to have TCG plugins > has no real impact on performance unless a plugin is actively loaded. > Even then the libempty.so plugin shows only a minor degradation in > performance caused by the extra book keeping the TCG has to do to keep > track of instructions. As it's a useful feature lets just enable it by > default and reduce our testing matrix a little. > > Cc: Paolo Bonzini <pbonzini@redhat.com> > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > --- > docs/devel/tcg-plugins.rst | 3 ++- > configure | 2 +- > .gitlab-ci.d/buildtest.yml | 23 ----------------------- > 3 files changed, 3 insertions(+), 25 deletions(-) > > diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst > index 18c6581d85..0cd77c77d2 100644 > --- a/docs/devel/tcg-plugins.rst > +++ b/docs/devel/tcg-plugins.rst > @@ -71,7 +71,8 @@ API > Usage > ===== > > -The QEMU binary needs to be compiled for plugin support:: > +Any QEMU binary with TCG support has plugins enabled by default. > +Earlier releases needed to be explicitly enabled with:: > > configure --enable-plugins > > diff --git a/configure b/configure > index 38704b4e11..9f7161e26c 100755 > --- a/configure > +++ b/configure > @@ -432,7 +432,7 @@ libxml2="$default_feature" > debug_mutex="no" > libpmem="$default_feature" > default_devices="true" > -plugins="no" > +plugins="$default_feature" > fuzzing="no" > rng_none="no" > secret_keyring="$default_feature" > diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml > index d9b834c848..89df51517c 100644 > --- a/.gitlab-ci.d/buildtest.yml > +++ b/.gitlab-ci.d/buildtest.yml > @@ -354,29 +354,6 @@ build-some-softmmu: > TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu > MAKE_CHECK_ARGS: check-tcg > > -# Run check-tcg against linux-user (with plugins) > -# we skip sparc64-linux-user until it has been fixed somewhat > -# we skip cris-linux-user as it doesn't use the common run loop > -build-user-plugins: > - extends: .native_build_job_template > - needs: > - job: amd64-debian-user-cross-container > - variables: > - IMAGE: debian-all-test-cross > - CONFIGURE_ARGS: --disable-tools --disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user,cris-linux-user > - MAKE_CHECK_ARGS: check-tcg > - timeout: 1h 30m > - > -build-some-softmmu-plugins: > - extends: .native_build_job_template > - needs: > - job: amd64-debian-user-cross-container > - variables: > - IMAGE: debian-all-test-cross > - CONFIGURE_ARGS: --disable-tools --disable-user --enable-plugins --enable-debug-tcg > - TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu > - MAKE_CHECK_ARGS: check-tcg > - > clang-system: > extends: .native_build_job_template > needs: > Seems to be a good idea! Reviewed-by: Thomas Huth <thuth@redhat.com>
diff --git a/docs/devel/tcg-plugins.rst b/docs/devel/tcg-plugins.rst index 18c6581d85..0cd77c77d2 100644 --- a/docs/devel/tcg-plugins.rst +++ b/docs/devel/tcg-plugins.rst @@ -71,7 +71,8 @@ API Usage ===== -The QEMU binary needs to be compiled for plugin support:: +Any QEMU binary with TCG support has plugins enabled by default. +Earlier releases needed to be explicitly enabled with:: configure --enable-plugins diff --git a/configure b/configure index 38704b4e11..9f7161e26c 100755 --- a/configure +++ b/configure @@ -432,7 +432,7 @@ libxml2="$default_feature" debug_mutex="no" libpmem="$default_feature" default_devices="true" -plugins="no" +plugins="$default_feature" fuzzing="no" rng_none="no" secret_keyring="$default_feature" diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml index d9b834c848..89df51517c 100644 --- a/.gitlab-ci.d/buildtest.yml +++ b/.gitlab-ci.d/buildtest.yml @@ -354,29 +354,6 @@ build-some-softmmu: TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu MAKE_CHECK_ARGS: check-tcg -# Run check-tcg against linux-user (with plugins) -# we skip sparc64-linux-user until it has been fixed somewhat -# we skip cris-linux-user as it doesn't use the common run loop -build-user-plugins: - extends: .native_build_job_template - needs: - job: amd64-debian-user-cross-container - variables: - IMAGE: debian-all-test-cross - CONFIGURE_ARGS: --disable-tools --disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user,cris-linux-user - MAKE_CHECK_ARGS: check-tcg - timeout: 1h 30m - -build-some-softmmu-plugins: - extends: .native_build_job_template - needs: - job: amd64-debian-user-cross-container - variables: - IMAGE: debian-all-test-cross - CONFIGURE_ARGS: --disable-tools --disable-user --enable-plugins --enable-debug-tcg - TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu - MAKE_CHECK_ARGS: check-tcg - clang-system: extends: .native_build_job_template needs:
Aside from a minor bloat to file size the ability to have TCG plugins has no real impact on performance unless a plugin is actively loaded. Even then the libempty.so plugin shows only a minor degradation in performance caused by the extra book keeping the TCG has to do to keep track of instructions. As it's a useful feature lets just enable it by default and reduce our testing matrix a little. Cc: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> --- docs/devel/tcg-plugins.rst | 3 ++- configure | 2 +- .gitlab-ci.d/buildtest.yml | 23 ----------------------- 3 files changed, 3 insertions(+), 25 deletions(-) -- 2.20.1