ae23c9
From 7000ac85100400a686b48562d830c7b14a439a94 Mon Sep 17 00:00:00 2001
ae23c9
From: Miroslav Rezanina <mrezanin@redhat.com>
ae23c9
Date: Mon, 11 Sep 2017 07:11:00 +0200
ae23c9
Subject: Initial redhat build
ae23c9
ae23c9
This patch introduces redhat build structure in redhat subdirectory. In addition,
ae23c9
several issues are fixed in QEMU tree:
ae23c9
ae23c9
- Change of app name for sasl_server_init in VNC code from qemu to qemu-kvm
ae23c9
 - As we use qemu-kvm as name in all places, this is updated to be consistent
ae23c9
- Man page renamed from qemu to qemu-kvm
ae23c9
 - man page is installed using make install so we have to fix it in qemu tree
ae23c9
- Use "/share/qemu-kvm" as SHARE_SUFFIX
ae23c9
 - We reconfigured our share to qemu-kvm to be consistent with used name
ae23c9
- Added .gitpublish configuration file
ae23c9
 - Support for git publish has to be stored in repository root
ae23c9
ae23c9
--
ae23c9
Rebase notes for RHEL-8 (2.12.0):
ae23c9
- Conflict fix in .gitpublish
ae23c9
- Not packaging hppa-firmware.img
ae23c9
- Disable vxhs.o in block/Makefile.obj
ae23c9
- Disable ppc64 builds
ae23c9
- Removed acpi-dsdt.aml (upstream)
ae23c9
- dropped libjpeg build requirement
ae23c9
- Replaced buildrequirement librados2 and librbd1 by librados and librbd.
ae23c9
- dropping "-pie -fPIE -DPIE" as we're using --enable-pie
ae23c9
- Do not use tcmmaloc
ae23c9
- Dropping gperftools-devel dependency
ae23c9
ae23c9
Rebase notes for RHEL-8.0 (2.11.0):
ae23c9
- Removed references to rhel6 rom files (virtio.rom, pcnet, rtl8139,
ae23c9
                                         net2k_pci e1000, bios-256k,
ae23c9
                                         pxe-e1000e.rom)
ae23c9
- Removed 80-kvm.rules file
ae23c9
- Changing ipxe linking to match upstream
ae23c9
- Updating kvm.modules and ksmtuned files
ae23c9
- cleaning %kvm_files section
ae23c9
- Remove CONFIG_RHV
ae23c9
- Remove CONFIG_LIVE_BLOCK_OPS
ae23c9
- Removing CONFIG_VTD
ae23c9
- Moving vxhs related changes to another commit
ae23c9
- removed live-block-migration option
ae23c9
ae23c9
Rebase notes (2.11.0):
ae23c9
- Removed --with-pixman configure option (upstream)
ae23c9
- Enabling multipath for qemu-pr-helper
ae23c9
- Removed qemu-kvm-tools
ae23c9
- Removed references to "-rhev" and "-ma"
ae23c9
- Removing kvm-unit-tests
ae23c9
- Enabling qemu-geust-agent
ae23c9
ae23c9
Rebase notes (2.10.0):
ae23c9
- live_block_migration option added upstream
ae23c9
- moved qmp-spec.txt file (upstream)
ae23c9
- added s390-netboot.img (added upstream)
ae23c9
- removed qemu_vga.ndrv (added upstream)
ae23c9
- switch to (rhevh-)rhel-7.5-candidate
ae23c9
- switched differentiation defaults
ae23c9
- moved binary files to separate commit
ae23c9
ae23c9
Rebase notes (2.9.0):
ae23c9
- documentation files handling changes (upstrem)
ae23c9
- removed --enable-colo option and --disable-archipelago (upstream)
ae23c9
- bump BuildRequires versions
ae23c9
- new mandatory argument for tracetool.py (upstream)
ae23c9
- updated RHEL 6 roms
ae23c9
- switch from sha1sum to sha256sum
ae23c9
- Moved adding rhel6-e1000.rom from machine types commit
ae23c9
- Moved adding pxe-e1000e.rom from device disable commit
ae23c9
- Use rdma-core instead of librdmacm
ae23c9
- Add upstream tarballs tar.xz to .gitignore
ae23c9
- Updated git-backport-diff script
ae23c9
ae23c9
Rebase notes (2.8.0):
ae23c9
- removed vhdx option (upstream)
ae23c9
- qemu-tech.html merged to qemu-doc.html (upstream)
ae23c9
- removed skiboot.lid firmware
ae23c9
- Changed tracetool.py parameters
ae23c9
- Added support for easy z-stream switch
ae23c9
ae23c9
Rebase notes (2.7.0):
ae23c9
- removed kvm_stat
ae23c9
- added efi-e1000e.rom
ae23c9
- added efi-vmxnet.rom
ae23c9
- added linuxboot_dma.bin
ae23c9
- trace-events renamed to trace-events-all
ae23c9
- reverted dependency to seccomp on aarch64
ae23c9
- Add ipxe-qemu-roms ad build dependency to pass tests
ae23c9
ae23c9
Rebase notes (2.6.0):
ae23c9
- removed q35-acpi-dsdt.aml
ae23c9
- add enable-gcrypt option
ae23c9
ae23c9
Rebase notes (2.5.0):
ae23c9
- New seccomp hadling in configure
ae23c9
- New condition format  in migration/migration.c
ae23c9
- libcacard extracted
ae23c9
- vnc fixes
ae23c9
- libsecomp for aarch64 requirements changed downstream
ae23c9
ae23c9
Rebase notes (2.4.0):
ae23c9
- remove --enable-ws-vnc
ae23c9
- use error_setg instead of error_set in migration/migration.c
ae23c9
- remove target-x86_64.conf
ae23c9
- create /etc/qemu-kvm on copying of bridge.conf
ae23c9
- disabled opengl
ae23c9
- rebased to version 2.3.0-30.el7
ae23c9
ae23c9
- Merged patches (Rebase 2.12.0)
ae23c9
- spec: Change License line
ae23c9
- spec: Do not depend on ipxe for Power architectures
ae23c9
- configuration: Use gcrypt instead of nettle
ae23c9
- spec: Use hardening flags for ksmctl build
ae23c9
ae23c9
Merged patches (rebase 2.11.0)
ae23c9
- ce6e8e5b8a redhat/qemu-kvm.spec.template: Enable seccomp on s390x, too
ae23c9
- 8629f208c6 redhat: Remove qemu.binfmt from the downstream repository
ae23c9
- b889ce1c40 Disable build of qemu-kvm-ma for x86_64
ae23c9
- 4506913c42 redhat: add CONFIG_RHV flag
ae23c9
- 21ecaec46f s390x: vm.allocate_pgste sysctl is no longer needed
ae23c9
- 78a1864d99 Update build_configure for 2.10.0 options
ae23c9
- decf881320 redhat: Provide s390x specific /etc/modprobe.d/kvm.conf
ae23c9
- e0cd3138cc redhat/qemu-kvm.spec: Use the freshly built s390-ccw.img firmware image
ae23c9
- 7af6b9a4fa redhat: install generic kvm.conf except for s390 and x86 architectures
ae23c9
- c4290f50bb redhat: fix rh-srpm target
ae23c9
- 8943f52e8b Package qemu-block-drivers manpage
ae23c9
- 88b41044d6 update spec to build and install qemu-pr-helper
ae23c9
ae23c9
Merged patches (rebase 2.10.0)
ae23c9
- feefd46 qemu-kvm.spec: Enable s390x build
ae23c9
- 985051e Removing texi2html from build requirements
ae23c9
- 7c64a2a Update ignore files for redhat usage
ae23c9
- 8f9a95a Disable replication feature
ae23c9
- 1b7bbc5 block/vxhs: modularize VXHS via g_module
ae23c9
- 7511527 Remove the dependencies to seavgabios-bin and ipxe-roms-qemu on s390x
ae23c9
- aa0891c Downstream: Don't disable SMT on POWER9 hosts
ae23c9
- a13a0e9 Update configuration for qemu 2.9
ae23c9
- bbf46dd disable pulseaudio and alsa
ae23c9
- 9124839 redhat/Makefile: honor BREW_FLAGS like the kernel
ae23c9
- 53c03bd copy SLIT test reference blobs into tests directory
ae23c9
- c4c77e6 Differentiation support
ae23c9
- f1ec0e8 configure: allow to disable VT-d emulation
ae23c9
- b972023 Disable VT-d for rhel builds
ae23c9
- 29a0414 RHEL Diff.: Add option in configure to disable live block ops
ae23c9
- 1f33b29 RHEL Diff.: Unregister live block operations
ae23c9
- c590551 RHEL Diff.: Disable live block operations in HMP monitor
ae23c9
- c7e208f RHEL Diff.: Add rpm spec options for live block ops
ae23c9
- 733af5c pegas: add rpm spec options for vhost-user
ae23c9
- ff16138 Add support for local build
ae23c9
- fb426d4 qemu-kvm.spec: Configure vm.allocate_pgste for s390x
ae23c9
ae23c9
Merged patches (rebase 2.9.0)
ae23c9
- 9c7ab94 Enable seccomp for ppc64/ppc64le architecture
ae23c9
- f6d7e9d Update qemu-kvm package Summary and Description
ae23c9
- a9e55b6 Disable usbredir and libcacard for unsupported architectures
ae23c9
- 0218220 Update configuration for 2.8.0 release
ae23c9
ae23c9
Merged patches (rebase 2.7.0)
ae23c9
- 2be6077 Fix SLOF dependency
ae23c9
- dc58590 spec: Remove dependency to ipxe-roms-qemu for aarch64
ae23c9
- 357ef43 spec: link sgabios.bin only for x86_64
ae23c9
- 08d82cc spec: Update rules before triggering for kvm device
ae23c9
- 8980a76 spec: Do not package ivshmem-server and ivshmem-client
ae23c9
- 027067c spec: add a sample kvm.conf to enable Nested Virtualization
ae23c9
- ba2ba30 Adjust locked memory limits to allow unprivileged VMs on Power
ae23c9
- e9740b0 Increase locked memory limit for all users, not just kvm group
ae23c9
- 8c301be add vgabios-virtio.bin symlink
ae23c9
- 4d03723 usb: enable streams support
ae23c9
- 2a9363e Add install dependency required for usb streams
ae23c9
- 9a54442 Add dump-guest-memory.py to all archs
ae23c9
- 73fffc9 add e1000e ipxe rom symlink
ae23c9
- aaaa2a9 Add 'luks' to block driver whitelist
ae23c9
- c78c3a8 redhat: switch from gcrypt to nettle for crypto
ae23c9
- bb51a69 redhat: include username and date in RPM N-E-V-R for scratch builds
ae23c9
ae23c9
Merged patches (rebase 2.4.0)
ae23c9
- 9201274 spec: Remove obsolete differentiation code
ae23c9
- a938a8c spec: Use external configuration script
ae23c9
- 5ca8d0e spec: Use configure options to prevent default resolution
ae23c9
- 5dca391 spec: Ship complete QMP documentation files
ae23c9
- 7899edd aarch64: allow --enable-seccomp
ae23c9
- a56fb9c aarch64: redhat spec: enable seccomp
ae23c9
- a9571e6 rhel: Update package version for SLOF dependency
ae23c9
- 25c70c4 configure: Add support for tcmalloc
ae23c9
- db72485 Change fsreeze-hook default location
ae23c9
- 14b8a9e redhat: add kvm-unit-tests tarball to environment
ae23c9
- 5ee4238 spec: Build tscdeadline_latency.flat from kvm-unit-tests
ae23c9
- 6ba800b Downstream-only: Start kvm-setup service before libvirtd service
ae23c9
- 59b43d6 Do not stop qemu-guest-agent service on target switch
ae23c9
- 4d851fa provide vhost module config file with max_mem_regions set to 509
ae23c9
- 0b18027 spec: Require proper version of SLOF
ae23c9
- 3c436c7 Fix rh-brew-aarch64, rh-brew-ppc rh-brew-ga-ppc target
ae23c9
ae23c9
(cherry picked from commit ba7591ec4a0906121d15ffbf740580bd79ec5814)
ae23c9
---
ae23c9
 .gitpublish                        |  58 +--
ae23c9
 Makefile                           |   2 +-
ae23c9
 block/Makefile.objs                |   2 +-
ae23c9
 os-posix.c                         |   2 +-
ae23c9
 redhat/.gitignore                  |   5 +
ae23c9
 redhat/85-kvm.preset               |   5 +
ae23c9
 redhat/95-kvm-memlock.conf         |  10 +
ae23c9
 redhat/99-qemu-guest-agent.rules   |   2 +
ae23c9
 redhat/Makefile                    |  88 ++++
ae23c9
 redhat/Makefile.common             |  48 +++
ae23c9
 redhat/Makefile.local              |  76 ++++
ae23c9
 redhat/bridge.conf                 |   1 +
ae23c9
 redhat/build_configure.sh          | 145 +++++++
ae23c9
 redhat/ksm.service                 |  13 +
ae23c9
 redhat/ksm.sysconfig               |   4 +
ae23c9
 redhat/ksmctl.c                    |  77 ++++
ae23c9
 redhat/ksmtuned                    | 139 +++++++
ae23c9
 redhat/ksmtuned.conf               |  21 +
ae23c9
 redhat/ksmtuned.service            |  12 +
ae23c9
 redhat/kvm-s390x.conf              |   7 +
ae23c9
 redhat/kvm-setup                   |  40 ++
ae23c9
 redhat/kvm-setup.service           |  14 +
ae23c9
 redhat/kvm-x86.conf                |  12 +
ae23c9
 redhat/kvm.conf                    |   3 +
ae23c9
 redhat/kvm.modules                 |  18 +
ae23c9
 redhat/qemu-ga.sysconfig           |  19 +
ae23c9
 redhat/qemu-guest-agent.service    |  20 +
ae23c9
 redhat/qemu-kvm.spec.template      | 794 +++++++++++++++++++++++++++++++++++++
ae23c9
 redhat/qemu-pr-helper.service      |  15 +
ae23c9
 redhat/qemu-pr-helper.socket       |   9 +
ae23c9
 redhat/rpmbuild/BUILD/.gitignore   |   2 +
ae23c9
 redhat/rpmbuild/RPMS/.gitignore    |   2 +
ae23c9
 redhat/rpmbuild/SOURCES/.gitignore |   2 +
ae23c9
 redhat/rpmbuild/SPECS/.gitignore   |   2 +
ae23c9
 redhat/rpmbuild/SRPMS/.gitignore   |   2 +
ae23c9
 redhat/scripts/frh.py              |  26 ++
ae23c9
 redhat/scripts/git-backport-diff   | 327 +++++++++++++++
ae23c9
 redhat/scripts/git-compile-check   | 215 ++++++++++
ae23c9
 redhat/scripts/process-patches.sh  |  78 ++++
ae23c9
 redhat/scripts/tarball_checksum.sh |   3 +
ae23c9
 redhat/vhost.conf                  |   3 +
ae23c9
 ui/vnc.c                           |   2 +-
ae23c9
 42 files changed, 2270 insertions(+), 55 deletions(-)
ae23c9
 create mode 100644 redhat/.gitignore
ae23c9
 create mode 100644 redhat/85-kvm.preset
ae23c9
 create mode 100644 redhat/95-kvm-memlock.conf
ae23c9
 create mode 100644 redhat/99-qemu-guest-agent.rules
ae23c9
 create mode 100644 redhat/Makefile
ae23c9
 create mode 100644 redhat/Makefile.common
ae23c9
 create mode 100644 redhat/Makefile.local
ae23c9
 create mode 100644 redhat/bridge.conf
ae23c9
 create mode 100755 redhat/build_configure.sh
ae23c9
 create mode 100644 redhat/ksm.service
ae23c9
 create mode 100644 redhat/ksm.sysconfig
ae23c9
 create mode 100644 redhat/ksmctl.c
ae23c9
 create mode 100644 redhat/ksmtuned
ae23c9
 create mode 100644 redhat/ksmtuned.conf
ae23c9
 create mode 100644 redhat/ksmtuned.service
ae23c9
 create mode 100644 redhat/kvm-s390x.conf
ae23c9
 create mode 100644 redhat/kvm-setup
ae23c9
 create mode 100644 redhat/kvm-setup.service
ae23c9
 create mode 100644 redhat/kvm-x86.conf
ae23c9
 create mode 100644 redhat/kvm.conf
ae23c9
 create mode 100644 redhat/kvm.modules
ae23c9
 create mode 100644 redhat/qemu-ga.sysconfig
ae23c9
 create mode 100644 redhat/qemu-guest-agent.service
ae23c9
 create mode 100644 redhat/qemu-kvm.spec.template
ae23c9
 create mode 100644 redhat/qemu-pr-helper.service
ae23c9
 create mode 100644 redhat/qemu-pr-helper.socket
ae23c9
 create mode 100644 redhat/rpmbuild/BUILD/.gitignore
ae23c9
 create mode 100644 redhat/rpmbuild/RPMS/.gitignore
ae23c9
 create mode 100644 redhat/rpmbuild/SOURCES/.gitignore
ae23c9
 create mode 100644 redhat/rpmbuild/SPECS/.gitignore
ae23c9
 create mode 100644 redhat/rpmbuild/SRPMS/.gitignore
ae23c9
 create mode 100755 redhat/scripts/frh.py
ae23c9
 create mode 100755 redhat/scripts/git-backport-diff
ae23c9
 create mode 100755 redhat/scripts/git-compile-check
ae23c9
 create mode 100755 redhat/scripts/process-patches.sh
ae23c9
 create mode 100755 redhat/scripts/tarball_checksum.sh
ae23c9
 create mode 100644 redhat/vhost.conf
ae23c9
ae23c9
diff --git a/Makefile b/Makefile
ae23c9
index d71dd5b..89ba4c5 100644
ae23c9
--- a/Makefile
ae23c9
+++ b/Makefile
ae23c9
@@ -804,7 +804,7 @@ install-doc: $(DOCS)
ae23c9
 	$(INSTALL_DATA) docs/interop/qemu-qmp-ref.txt "$(DESTDIR)$(qemu_docdir)"
ae23c9
 ifdef CONFIG_POSIX
ae23c9
 	$(INSTALL_DIR) "$(DESTDIR)$(mandir)/man1"
ae23c9
-	$(INSTALL_DATA) qemu.1 "$(DESTDIR)$(mandir)/man1"
ae23c9
+	$(INSTALL_DATA) qemu.1 "$(DESTDIR)$(mandir)/man1/qemu-kvm.1"
ae23c9
 	$(INSTALL_DIR) "$(DESTDIR)$(mandir)/man7"
ae23c9
 	$(INSTALL_DATA) docs/interop/qemu-qmp-ref.7 "$(DESTDIR)$(mandir)/man7"
ae23c9
 	$(INSTALL_DATA) docs/qemu-block-drivers.7 "$(DESTDIR)$(mandir)/man7"
ae23c9
diff --git a/block/Makefile.objs b/block/Makefile.objs
ae23c9
index d644bac..c0693fc 100644
ae23c9
--- a/block/Makefile.objs
ae23c9
+++ b/block/Makefile.objs
ae23c9
@@ -20,7 +20,7 @@ block-obj-$(CONFIG_LIBNFS) += nfs.o
ae23c9
 block-obj-$(CONFIG_CURL) += curl.o
ae23c9
 block-obj-$(CONFIG_RBD) += rbd.o
ae23c9
 block-obj-$(CONFIG_GLUSTERFS) += gluster.o
ae23c9
-block-obj-$(CONFIG_VXHS) += vxhs.o
ae23c9
+#block-obj-$(CONFIG_VXHS) += vxhs.o
ae23c9
 block-obj-$(CONFIG_LIBSSH2) += ssh.o
ae23c9
 block-obj-y += accounting.o dirty-bitmap.o
ae23c9
 block-obj-y += write-threshold.o
ae23c9
diff --git a/os-posix.c b/os-posix.c
ae23c9
index b9c2343..05de8ee 100644
ae23c9
--- a/os-posix.c
ae23c9
+++ b/os-posix.c
ae23c9
@@ -75,7 +75,7 @@ void os_setup_signal_handling(void)
ae23c9
 /* Find a likely location for support files using the location of the binary.
ae23c9
    For installed binaries this will be "$bindir/../share/qemu".  When
ae23c9
    running from the build tree this will be "$bindir/../pc-bios".  */
ae23c9
-#define SHARE_SUFFIX "/share/qemu"
ae23c9
+#define SHARE_SUFFIX "/share/qemu-kvm"
ae23c9
 #define BUILD_SUFFIX "/pc-bios"
ae23c9
 char *os_find_datadir(void)
ae23c9
 {
ae23c9
diff --git a/ui/vnc.c b/ui/vnc.c
ae23c9
index e164eb7..0c3011b 100644
ae23c9
--- a/ui/vnc.c
ae23c9
+++ b/ui/vnc.c
ae23c9
@@ -4045,7 +4045,7 @@ void vnc_display_open(const char *id, Error **errp)
ae23c9
     trace_vnc_auth_init(vd, 1, vd->ws_auth, vd->ws_subauth);
ae23c9
 
ae23c9
 #ifdef CONFIG_VNC_SASL
ae23c9
-    if ((saslErr = sasl_server_init(NULL, "qemu")) != SASL_OK) {
ae23c9
+    if ((saslErr = sasl_server_init(NULL, "qemu-kvm")) != SASL_OK) {
ae23c9
         error_setg(errp, "Failed to initialize SASL auth: %s",
ae23c9
                    sasl_errstring(saslErr, NULL, NULL));
ae23c9
         goto fail;
ae23c9
-- 
ae23c9
1.8.3.1
ae23c9