Merge remote-tracking branch 'up/master' into master-riscv64

Signed-off-by: David Abdurachmanov <david.abdurachmanov@gmail.com>
This commit is contained in:
David Abdurachmanov 2019-01-21 21:24:24 +01:00
commit 7dafb6b5a6
Signed by: davidlt
GPG Key ID: 7108702C938B13C1
12 changed files with 133 additions and 363 deletions

4
.gitignore vendored
View File

@ -22,3 +22,7 @@
/qemu-2.12.0-rc2.tar.xz /qemu-2.12.0-rc2.tar.xz
/qemu-2.12.0-rc3.tar.xz /qemu-2.12.0-rc3.tar.xz
/qemu-2.12.0.tar.xz /qemu-2.12.0.tar.xz
/qemu-3.0.0-rc3.tar.xz
/qemu-3.0.0.tar.xz
/qemu-3.1.0-rc1.tar.xz
/qemu-3.1.0.tar.xz

View File

@ -0,0 +1,32 @@
From 2c25ad161d7714f15b1951c69c50844ea81f4186 Mon Sep 17 00:00:00 2001
From: Adam Williamson <awilliam@redhat.com>
Date: Wed, 20 Dec 2017 15:43:07 -0800
Subject: [PATCH] Remove problematic 'evdev 86' key from en-us keymap
This causes LP#1738283. Gerd will have to come up with a better
fix, but just hacking out the problematic key definition should
work for now.
---
pc-bios/keymaps/en-us | 6 ------
1 file changed, 6 deletions(-)
diff --git a/pc-bios/keymaps/en-us b/pc-bios/keymaps/en-us
index a70e03adc0..e518a9dc35 100644
--- a/pc-bios/keymaps/en-us
+++ b/pc-bios/keymaps/en-us
@@ -343,12 +343,6 @@ KP_Decimal 0x53 numlock
# evdev 85 (0x55): no evdev -> QKeyCode mapping (xkb keysym NoSymbol)
-# evdev 86 (0x56), QKeyCode "less", number 0x56
-less 0x56
-greater 0x56 shift
-bar 0x56 altgr
-brokenbar 0x56 shift altgr
-
# evdev 87 (0x57), QKeyCode "f11", number 0x57
F11 0x57
--
2.15.1

View File

@ -1,3 +0,0 @@
# KVM S390 VM creation fails without this set
# https://www.mail-archive.com/kvm@vger.kernel.org/msg115576.html
vm.allocate_pgste = 1

View File

@ -1,14 +0,0 @@
[Unit]
Description=Kernel Samepage Merging
ConditionPathExists=/sys/kernel/mm/ksm
ConditionVirtualization=no
[Service]
Type=oneshot
RemainAfterExit=yes
EnvironmentFile=-/etc/sysconfig/ksm
ExecStart=/usr/libexec/ksmctl start
ExecStop=/usr/libexec/ksmctl stop
[Install]
WantedBy=multi-user.target

View File

@ -1,4 +0,0 @@
# The maximum number of unswappable kernel pages
# which may be allocated by ksm (0 for unlimited)
# If unset, defaults to half of total memory
# KSM_MAX_KERNEL_PAGES=

View File

@ -1,77 +0,0 @@
/* Start/stop KSM, for systemd.
* Copyright (C) 2009, 2011 Red Hat, Inc.
* Written by Paolo Bonzini <pbonzini@redhat.com>.
* Based on the original sysvinit script by Dan Kenigsberg <danken@redhat.com>
* This file is distributed under the GNU General Public License, version 2
* or later. */
#include <unistd.h>
#include <stdio.h>
#include <limits.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#define KSM_MAX_KERNEL_PAGES_FILE "/sys/kernel/mm/ksm/max_kernel_pages"
#define KSM_RUN_FILE "/sys/kernel/mm/ksm/run"
char *program_name;
int usage(void)
{
fprintf(stderr, "Usage: %s {start|stop}\n", program_name);
return 1;
}
int write_value(uint64_t value, char *filename)
{
FILE *fp;
if (!(fp = fopen(filename, "w")) ||
fprintf(fp, "%llu\n", (unsigned long long) value) == EOF ||
fflush(fp) == EOF ||
fclose(fp) == EOF)
return 1;
return 0;
}
uint64_t ksm_max_kernel_pages()
{
char *var = getenv("KSM_MAX_KERNEL_PAGES");
char *endptr;
uint64_t value;
if (var && *var) {
value = strtoll(var, &endptr, 0);
if (value < LLONG_MAX && !*endptr)
return value;
}
/* Unless KSM_MAX_KERNEL_PAGES is set, let KSM munch up to half of
* total memory. */
return sysconf(_SC_PHYS_PAGES) / 2;
}
int start(void)
{
if (access(KSM_MAX_KERNEL_PAGES_FILE, R_OK) >= 0)
write_value(ksm_max_kernel_pages(), KSM_MAX_KERNEL_PAGES_FILE);
return write_value(1, KSM_RUN_FILE);
}
int stop(void)
{
return write_value(0, KSM_RUN_FILE);
}
int main(int argc, char **argv)
{
program_name = argv[0];
if (argc < 2) {
return usage();
} else if (!strcmp(argv[1], "start")) {
return start();
} else if (!strcmp(argv[1], "stop")) {
return stop();
} else {
return usage();
}
}

139
ksmtuned
View File

@ -1,139 +0,0 @@
#!/bin/bash
#
# Copyright 2009 Red Hat, Inc. and/or its affiliates.
# Released under the GPL
#
# Author: Dan Kenigsberg <danken@redhat.com>
#
# ksmtuned - a simple script that controls whether (and with what vigor) ksm
# should search for duplicated pages.
#
# starts ksm when memory commited to qemu processes exceeds a threshold, and
# make ksm work harder and harder untill memory load falls below that
# threshold.
#
# send SIGUSR1 to this process right after a new qemu process is started, or
# following its death, to retune ksm accordingly
#
# needs testing and ironing. contact danken@redhat.com if something breaks.
if [ -f /etc/ksmtuned.conf ]; then
. /etc/ksmtuned.conf
fi
debug() {
if [ -n "$DEBUG" ]; then
s="`/bin/date`: $*"
[ -n "$LOGFILE" ] && echo "$s" >> "$LOGFILE" || echo "$s"
fi
}
KSM_MONITOR_INTERVAL=${KSM_MONITOR_INTERVAL:-60}
KSM_NPAGES_BOOST=${KSM_NPAGES_BOOST:-300}
KSM_NPAGES_DECAY=${KSM_NPAGES_DECAY:--50}
KSM_NPAGES_MIN=${KSM_NPAGES_MIN:-64}
KSM_NPAGES_MAX=${KSM_NPAGES_MAX:-1250}
# millisecond sleep between ksm scans for 16Gb server. Smaller servers sleep
# more, bigger sleep less.
KSM_SLEEP_MSEC=${KSM_SLEEP_MSEC:-10}
KSM_THRES_COEF=${KSM_THRES_COEF:-20}
KSM_THRES_CONST=${KSM_THRES_CONST:-2048}
total=`awk '/^MemTotal:/ {print $2}' /proc/meminfo`
debug total $total
npages=0
sleep=$[KSM_SLEEP_MSEC * 16 * 1024 * 1024 / total]
[ $sleep -le 10 ] && sleep=10
debug sleep $sleep
thres=$[total * KSM_THRES_COEF / 100]
if [ $KSM_THRES_CONST -gt $thres ]; then
thres=$KSM_THRES_CONST
fi
debug thres $thres
KSMCTL () {
case x$1 in
xstop)
echo 0 > /sys/kernel/mm/ksm/run
;;
xstart)
echo $2 > /sys/kernel/mm/ksm/pages_to_scan
echo $3 > /sys/kernel/mm/ksm/sleep_millisecs
echo 1 > /sys/kernel/mm/ksm/run
;;
esac
}
committed_memory () {
# calculate how much memory is committed to running qemu processes
local pidlist
pidlist=$(pgrep -d ' ' -- '^qemu(-(kvm|system-.+)|:.{1,11})$')
if [ -n "$pidlist" ]; then
ps -p "$pidlist" -o rsz=
fi | awk '{ sum += $1 }; END { print 0+sum }'
}
free_memory () {
awk '/^(MemFree|Buffers|Cached):/ {free += $2}; END {print free}' \
/proc/meminfo
}
increase_npages() {
local delta
delta=${1:-0}
npages=$[npages + delta]
if [ $npages -lt $KSM_NPAGES_MIN ]; then
npages=$KSM_NPAGES_MIN
elif [ $npages -gt $KSM_NPAGES_MAX ]; then
npages=$KSM_NPAGES_MAX
fi
echo $npages
}
adjust () {
local free committed
free=`free_memory`
committed=`committed_memory`
debug committed $committed free $free
if [ $[committed + thres] -lt $total -a $free -gt $thres ]; then
KSMCTL stop
debug "$[committed + thres] < $total and free > $thres, stop ksm"
return 1
fi
debug "$[committed + thres] > $total, start ksm"
if [ $free -lt $thres ]; then
npages=`increase_npages $KSM_NPAGES_BOOST`
debug "$free < $thres, boost"
else
npages=`increase_npages $KSM_NPAGES_DECAY`
debug "$free > $thres, decay"
fi
KSMCTL start $npages $sleep
debug "KSMCTL start $npages $sleep"
return 0
}
function nothing () {
:
}
loop () {
trap nothing SIGUSR1
while true
do
sleep $KSM_MONITOR_INTERVAL &
wait $!
adjust
done
}
PIDFILE=${PIDFILE-/var/run/ksmtune.pid}
if touch "$PIDFILE"; then
loop &
echo $! > "$PIDFILE"
fi

View File

@ -1,21 +0,0 @@
# Configuration file for ksmtuned.
# How long ksmtuned should sleep between tuning adjustments
# KSM_MONITOR_INTERVAL=60
# Millisecond sleep between ksm scans for 16Gb server.
# Smaller servers sleep more, bigger sleep less.
# KSM_SLEEP_MSEC=10
# KSM_NPAGES_BOOST=300
# KSM_NPAGES_DECAY=-50
# KSM_NPAGES_MIN=64
# KSM_NPAGES_MAX=1250
# KSM_THRES_COEF=20
# KSM_THRES_CONST=2048
# uncomment the following if you want ksmtuned debug info
# LOGFILE=/var/log/ksmtuned
# DEBUG=1

View File

@ -1,13 +0,0 @@
[Unit]
Description=Kernel Samepage Merging (KSM) Tuning Daemon
After=ksm.service
Requires=ksm.service
ConditionVirtualization=no
[Service]
ExecStart=/usr/sbin/ksmtuned
ExecReload=/bin/kill -USR1 $MAINPID
Type=forking
[Install]
WantedBy=multi-user.target

187
qemu.spec
View File

@ -77,6 +77,13 @@
%endif %endif
# All modules should be listed here. # All modules should be listed here.
%ifarch %{ix86} %{arm}
%define with_block_rbd 0
%else
%define with_block_rbd 1
%endif
%if %{with_block_rbd}
%global requires_all_modules \ %global requires_all_modules \
Requires: %{name}-block-curl = %{epoch}:%{version}-%{release} \ Requires: %{name}-block-curl = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-dmg = %{epoch}:%{version}-%{release} \ Requires: %{name}-block-dmg = %{epoch}:%{version}-%{release} \
@ -84,6 +91,7 @@ Requires: %{name}-block-gluster = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-iscsi = %{epoch}:%{version}-%{release} \ Requires: %{name}-block-iscsi = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-nfs = %{epoch}:%{version}-%{release} \ Requires: %{name}-block-nfs = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-rbd = %{epoch}:%{version}-%{release} \ Requires: %{name}-block-rbd = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-ssh = %{epoch}:%{version}-%{release} \
Requires: %{name}-audio-alsa = %{epoch}:%{version}-%{release} \ Requires: %{name}-audio-alsa = %{epoch}:%{version}-%{release} \
Requires: %{name}-audio-oss = %{epoch}:%{version}-%{release} \ Requires: %{name}-audio-oss = %{epoch}:%{version}-%{release} \
Requires: %{name}-audio-pa = %{epoch}:%{version}-%{release} \ Requires: %{name}-audio-pa = %{epoch}:%{version}-%{release} \
@ -91,10 +99,25 @@ Requires: %{name}-audio-sdl = %{epoch}:%{version}-%{release} \
Requires: %{name}-ui-curses = %{epoch}:%{version}-%{release} \ Requires: %{name}-ui-curses = %{epoch}:%{version}-%{release} \
Requires: %{name}-ui-gtk = %{epoch}:%{version}-%{release} \ Requires: %{name}-ui-gtk = %{epoch}:%{version}-%{release} \
Requires: %{name}-ui-sdl = %{epoch}:%{version}-%{release} Requires: %{name}-ui-sdl = %{epoch}:%{version}-%{release}
%else
%global requires_all_modules \
Requires: %{name}-block-curl = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-dmg = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-gluster = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-iscsi = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-nfs = %{epoch}:%{version}-%{release} \
Requires: %{name}-block-ssh = %{epoch}:%{version}-%{release} \
Requires: %{name}-audio-alsa = %{epoch}:%{version}-%{release} \
Requires: %{name}-audio-oss = %{epoch}:%{version}-%{release} \
Requires: %{name}-audio-pa = %{epoch}:%{version}-%{release} \
Requires: %{name}-audio-sdl = %{epoch}:%{version}-%{release} \
Requires: %{name}-ui-curses = %{epoch}:%{version}-%{release} \
Requires: %{name}-ui-gtk = %{epoch}:%{version}-%{release} \
Requires: %{name}-ui-sdl = %{epoch}:%{version}-%{release}
%endif
# Release candidate version tracking # Release candidate version tracking
#global rcver rc3 # global rcver rc1
%if 0%{?rcver:1} %if 0%{?rcver:1}
%global rcrel .%{rcver} %global rcrel .%{rcver}
%global rcstr -%{rcver} %global rcstr -%{rcver}
@ -103,21 +126,14 @@ Requires: %{name}-ui-sdl = %{epoch}:%{version}-%{release}
Summary: QEMU is a FAST! processor emulator Summary: QEMU is a FAST! processor emulator
Name: qemu Name: qemu
Version: 2.12.0 Version: 3.1.0
Release: 1%{?rcrel}.2.riscv64%{?dist} Release: 4%{?rcrel}.0.riscv64%{?dist}
Epoch: 2 Epoch: 2
License: GPLv2 and BSD and MIT and CC-BY License: GPLv2 and BSD and MIT and CC-BY
URL: http://www.qemu.org/ URL: http://www.qemu.org/
Source0: http://wiki.qemu-project.org/download/%{name}-%{version}%{?rcstr}.tar.xz Source0: http://wiki.qemu-project.org/download/%{name}-%{version}%{?rcstr}.tar.xz
# KSM control scripts
Source4: ksm.service
Source5: ksm.sysconfig
Source6: ksmctl.c
Source7: ksmtuned.service
Source8: ksmtuned
Source9: ksmtuned.conf
# guest agent service # guest agent service
Source10: qemu-guest-agent.service Source10: qemu-guest-agent.service
Source17: qemu-ga.sysconfig Source17: qemu-ga.sysconfig
@ -130,12 +146,15 @@ Source13: qemu-kvm.sh
# PR manager service # PR manager service
Source14: qemu-pr-helper.service Source14: qemu-pr-helper.service
Source15: qemu-pr-helper.socket Source15: qemu-pr-helper.socket
# /etc/modprobe.d/kvm.conf # /etc/modprobe.d/kvm.conf, for x86
Source20: kvm.conf Source20: kvm-x86.modprobe.conf
# /etc/sysctl.d/50-kvm-s390x.conf
Source21: 50-kvm-s390x.conf
# /etc/security/limits.d/95-kvm-ppc64-memlock.conf # /etc/security/limits.d/95-kvm-ppc64-memlock.conf
Source22: 95-kvm-ppc64-memlock.conf Source21: 95-kvm-ppc64-memlock.conf
# Good ol' keymap 86 still messin with us
Patch0: 0001-Remove-problematic-evdev-86-key-from-en-us-keymap.patch
# riscv backend # riscv backend
# Source: https://github.com/riscv/riscv-qemu/commit/0805ad337785f0cce29ecf162bad9e1c477051f3.patch # Source: https://github.com/riscv/riscv-qemu/commit/0805ad337785f0cce29ecf162bad9e1c477051f3.patch
@ -203,9 +222,11 @@ BuildRequires: libseccomp-devel >= 2.3.0
%endif %endif
# For network block driver # For network block driver
BuildRequires: libcurl-devel BuildRequires: libcurl-devel
%if %{with_block_rbd}
# For rbd block driver # For rbd block driver
BuildRequires: librados2-devel BuildRequires: librados2-devel
BuildRequires: librbd1-devel BuildRequires: librbd1-devel
%endif
# We need both because the 'stap' binary is probed for by configure # We need both because the 'stap' binary is probed for by configure
BuildRequires: systemtap BuildRequires: systemtap
BuildRequires: systemtap-sdt-devel BuildRequires: systemtap-sdt-devel
@ -263,6 +284,12 @@ BuildRequires: capstone-devel
BuildRequires: libxml2-devel BuildRequires: libxml2-devel
# python scripts in the build process # python scripts in the build process
BuildRequires: python3 BuildRequires: python3
%ifarch x86_64
# qemu 3.1: Used for nvdimm
BuildRequires: libpmem-devel
%endif
# qemu 3.1: Used for qemu-ga
BuildRequires: libudev-devel
BuildRequires: glibc-static pcre-static glib2-static zlib-static BuildRequires: glibc-static pcre-static glib2-static zlib-static
# if -pthread is used GCC SPEC will add --as-needed -latomic --no-as-needed for linker # if -pthread is used GCC SPEC will add --as-needed -latomic --no-as-needed for linker
@ -330,17 +357,6 @@ Requires(postun): systemd-units
This package provides the common files needed by all QEMU targets This package provides the common files needed by all QEMU targets
%package -n ksm
Summary: Kernel Samepage Merging services
Requires(post): systemd-units
Requires(postun): systemd-units
%description -n ksm
Kernel Samepage Merging (KSM) is a memory-saving de-duplication feature,
that merges anonymous (private) pages (not pagecache ones).
This package provides service files for disabling and tuning KSM.
%package guest-agent %package guest-agent
Summary: QEMU guest agent Summary: QEMU guest agent
Requires(post): systemd-units Requires(post): systemd-units
@ -412,6 +428,7 @@ This package provides the additional NFS block driver for QEMU.
Install this package if you want to access remote NFS storage. Install this package if you want to access remote NFS storage.
%if %{with_block_rbd}
%package block-rbd %package block-rbd
Summary: QEMU Ceph/RBD block driver Summary: QEMU Ceph/RBD block driver
Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
@ -420,7 +437,7 @@ This package provides the additional Ceph/RBD block driver for QEMU.
Install this package if you want to access remote Ceph volumes Install this package if you want to access remote Ceph volumes
using the rbd protocol. using the rbd protocol.
%endif
%package block-ssh %package block-ssh
Summary: QEMU SSH block driver Summary: QEMU SSH block driver
@ -884,9 +901,9 @@ run_configure() {
--prefix=%{_prefix} \ --prefix=%{_prefix} \
--libdir=%{_libdir} \ --libdir=%{_libdir} \
--sysconfdir=%{_sysconfdir} \ --sysconfdir=%{_sysconfdir} \
--interp-prefix=%{_prefix}/qemu-%%M \
--localstatedir=%{_localstatedir} \ --localstatedir=%{_localstatedir} \
--libexecdir=%{_libexecdir} \ --libexecdir=%{_libexecdir} \
--interp-prefix=%{_prefix}/qemu-%%M \
--with-pkgversion=%{name}-%{version}-%{release} \ --with-pkgversion=%{name}-%{version}-%{release} \
--disable-strip \ --disable-strip \
--disable-werror \ --disable-werror \
@ -920,7 +937,6 @@ run_configure \
--enable-mpath \ --enable-mpath \
%{spiceflag} \ %{spiceflag} \
--with-sdlabi="2.0" \ --with-sdlabi="2.0" \
--with-gtkabi="3.0"
echo "config-host.mak contents:" echo "config-host.mak contents:"
echo "===" echo "==="
@ -955,15 +971,15 @@ run_configure \
--disable-brlapi \ --disable-brlapi \
--disable-mpath \ --disable-mpath \
--disable-libnfs \ --disable-libnfs \
--disable-capstone --disable-capstone \
--disable-xen \
--disable-rdma
make V=1 %{?_smp_mflags} $buildldflags make V=1 %{?_smp_mflags} $buildldflags
popd popd
%endif %endif
gcc %{_sourcedir}/ksmctl.c $RPM_OPT_FLAGS $RPM_LD_FLAGS -o ksmctl
%install %install
@ -974,19 +990,9 @@ mkdir -p %{buildroot}%{_udevdir}
mkdir -p %{buildroot}%{_unitdir} mkdir -p %{buildroot}%{_unitdir}
mkdir -p %{buildroot}%{_sysconfdir}/qemu mkdir -p %{buildroot}%{_sysconfdir}/qemu
install -D -p -m 0644 %{_sourcedir}/ksm.service %{buildroot}%{_unitdir}
install -D -p -m 0644 %{_sourcedir}/ksm.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/ksm
install -D -p -m 0755 ksmctl %{buildroot}%{_libexecdir}/ksmctl
install -D -p -m 0644 %{_sourcedir}/ksmtuned.service %{buildroot}%{_unitdir}
install -D -p -m 0755 %{_sourcedir}/ksmtuned %{buildroot}%{_sbindir}/ksmtuned
install -D -p -m 0644 %{_sourcedir}/ksmtuned.conf %{buildroot}%{_sysconfdir}/ksmtuned.conf
install -D -p -m 0644 %{_sourcedir}/kvm.conf %{buildroot}%{_sysconfdir}/modprobe.d/kvm.conf
# Install qemu-guest-agent service and udev rules # Install qemu-guest-agent service and udev rules
install -m 0644 %{_sourcedir}/qemu-guest-agent.service %{buildroot}%{_unitdir} install -p -m 0644 %{_sourcedir}/qemu-guest-agent.service %{buildroot}%{_unitdir}
install -m 0644 %{_sourcedir}/qemu-ga.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/qemu-ga install -D -p -m 0644 %{_sourcedir}/qemu-ga.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/qemu-ga
install -m 0644 %{_sourcedir}/99-qemu-guest-agent.rules %{buildroot}%{_udevdir} install -m 0644 %{_sourcedir}/99-qemu-guest-agent.rules %{buildroot}%{_udevdir}
mkdir -p %{buildroot}%{_sysconfdir}/qemu-ga/fsfreeze-hook.d mkdir -p %{buildroot}%{_sysconfdir}/qemu-ga/fsfreeze-hook.d
@ -999,11 +1005,6 @@ touch %{buildroot}%{_localstatedir}/log/qga-fsfreeze-hook.log
install -m 0644 %{_sourcedir}/qemu-pr-helper.service %{buildroot}%{_unitdir} install -m 0644 %{_sourcedir}/qemu-pr-helper.service %{buildroot}%{_unitdir}
install -m 0644 %{_sourcedir}/qemu-pr-helper.socket %{buildroot}%{_unitdir} install -m 0644 %{_sourcedir}/qemu-pr-helper.socket %{buildroot}%{_unitdir}
%ifarch s390x
install -d %{buildroot}%{_sysconfdir}/sysctl.d
install -m 0644 %{_sourcedir}/50-kvm-s390x.conf %{buildroot}%{_sysconfdir}/sysctl.d
%endif
%ifarch %{power64} %ifarch %{power64}
install -d %{buildroot}%{_sysconfdir}/security/limits.d install -d %{buildroot}%{_sysconfdir}/security/limits.d
install -m 0644 %{_sourcedir}/95-kvm-ppc64-memlock.conf %{buildroot}%{_sysconfdir}/security/limits.d install -m 0644 %{_sourcedir}/95-kvm-ppc64-memlock.conf %{buildroot}%{_sysconfdir}/security/limits.d
@ -1053,6 +1054,7 @@ done
%if 0%{?need_qemu_kvm} %if 0%{?need_qemu_kvm}
install -m 0755 %{_sourcedir}/qemu-kvm.sh %{buildroot}%{_bindir}/qemu-kvm install -m 0755 %{_sourcedir}/qemu-kvm.sh %{buildroot}%{_bindir}/qemu-kvm
ln -sf qemu.1.gz %{buildroot}%{_mandir}/man1/qemu-kvm.1.gz ln -sf qemu.1.gz %{buildroot}%{_mandir}/man1/qemu-kvm.1.gz
install -D -p -m 0644 %{_sourcedir}/kvm-x86.modprobe.conf %{buildroot}%{_sysconfdir}/modprobe.d/kvm.conf
%endif %endif
install -D -p -m 0644 qemu.sasl %{buildroot}%{_sysconfdir}/sasl2/qemu.conf install -D -p -m 0644 qemu.sasl %{buildroot}%{_sysconfdir}/sasl2/qemu.conf
@ -1175,15 +1177,6 @@ qemu-sanity-check --qemu=%{?hostqemu} ||:
popd popd
%if %{have_kvm}
%post %{kvm_package}
%ifarch s390x
%sysctl_apply 50-kvm-s390x.conf
%endif
%endif
%post common %post common
getent group kvm >/dev/null || groupadd -g 36 -r kvm getent group kvm >/dev/null || groupadd -g 36 -r kvm
getent group qemu >/dev/null || groupadd -g 107 -r qemu getent group qemu >/dev/null || groupadd -g 107 -r qemu
@ -1192,17 +1185,6 @@ getent passwd qemu >/dev/null || \
-c "qemu user" qemu -c "qemu user" qemu
%post -n ksm
%systemd_post ksm.service
%systemd_post ksmtuned.service
%preun -n ksm
%systemd_preun ksm.service
%systemd_preun ksmtuned.service
%postun -n ksm
%systemd_postun_with_restart ksm.service
%systemd_postun_with_restart ksmtuned.service
%post user-binfmt %post user-binfmt
/bin/systemctl --system try-restart systemd-binfmt.service &>/dev/null || : /bin/systemctl --system try-restart systemd-binfmt.service &>/dev/null || :
%postun user-binfmt %postun user-binfmt
@ -1271,30 +1253,22 @@ getent passwd qemu >/dev/null || \
%{_mandir}/man1/qemu.1* %{_mandir}/man1/qemu.1*
%{_mandir}/man1/virtfs-proxy-helper.1* %{_mandir}/man1/virtfs-proxy-helper.1*
%{_mandir}/man7/qemu-block-drivers.7* %{_mandir}/man7/qemu-block-drivers.7*
%{_mandir}/man7/qemu-cpu-models.7*
%{_mandir}/man7/qemu-ga-ref.7* %{_mandir}/man7/qemu-ga-ref.7*
%{_mandir}/man7/qemu-qmp-ref.7* %{_mandir}/man7/qemu-qmp-ref.7*
%{_bindir}/virtfs-proxy-helper %{_bindir}/virtfs-proxy-helper
%{_bindir}/qemu-edid
%{_bindir}/qemu-keymap %{_bindir}/qemu-keymap
%{_bindir}/qemu-pr-helper %{_bindir}/qemu-pr-helper
%{_unitdir}/qemu-pr-helper.service %{_unitdir}/qemu-pr-helper.service
%{_unitdir}/qemu-pr-helper.socket %{_unitdir}/qemu-pr-helper.socket
%attr(4755, root, root) %{_libexecdir}/qemu-bridge-helper %attr(4755, root, root) %{_libexecdir}/qemu-bridge-helper
%config(noreplace) %{_sysconfdir}/sasl2/qemu.conf %config(noreplace) %{_sysconfdir}/sasl2/qemu.conf
%config(noreplace) %{_sysconfdir}/modprobe.d/kvm.conf
%dir %{_sysconfdir}/qemu %dir %{_sysconfdir}/qemu
%config(noreplace) %{_sysconfdir}/qemu/bridge.conf %config(noreplace) %{_sysconfdir}/qemu/bridge.conf
%dir %{_libdir}/qemu %dir %{_libdir}/qemu
%files -n ksm
%{_libexecdir}/ksmctl
%{_sbindir}/ksmtuned
%{_unitdir}/ksmtuned.service
%{_unitdir}/ksm.service
%config(noreplace) %{_sysconfdir}/ksmtuned.conf
%config(noreplace) %{_sysconfdir}/sysconfig/ksm
%files guest-agent %files guest-agent
%{_bindir}/qemu-ga %{_bindir}/qemu-ga
%{_mandir}/man8/qemu-ga.8* %{_mandir}/man8/qemu-ga.8*
@ -1323,8 +1297,10 @@ getent passwd qemu >/dev/null || \
%{_libdir}/qemu/block-iscsi.so %{_libdir}/qemu/block-iscsi.so
%files block-nfs %files block-nfs
%{_libdir}/qemu/block-nfs.so %{_libdir}/qemu/block-nfs.so
%if %{with_block_rbd}
%files block-rbd %files block-rbd
%{_libdir}/qemu/block-rbd.so %{_libdir}/qemu/block-rbd.so
%endif
%files block-ssh %files block-ssh
%{_libdir}/qemu/block-ssh.so %{_libdir}/qemu/block-ssh.so
@ -1581,11 +1557,9 @@ getent passwd qemu >/dev/null || \
%files system-ppc-core %files system-ppc-core
%{_bindir}/qemu-system-ppc %{_bindir}/qemu-system-ppc
%{_bindir}/qemu-system-ppc64 %{_bindir}/qemu-system-ppc64
%{_bindir}/qemu-system-ppcemb
%{_datadir}/systemtap/tapset/qemu-system-ppc*.stp %{_datadir}/systemtap/tapset/qemu-system-ppc*.stp
%{_mandir}/man1/qemu-system-ppc.1* %{_mandir}/man1/qemu-system-ppc.1*
%{_mandir}/man1/qemu-system-ppc64.1* %{_mandir}/man1/qemu-system-ppc64.1*
%{_mandir}/man1/qemu-system-ppcemb.1*
%{_datadir}/%{name}/bamboo.dtb %{_datadir}/%{name}/bamboo.dtb
%{_datadir}/%{name}/canyonlands.dtb %{_datadir}/%{name}/canyonlands.dtb
%{_datadir}/%{name}/ppc_rom.bin %{_datadir}/%{name}/ppc_rom.bin
@ -1614,9 +1588,6 @@ getent passwd qemu >/dev/null || \
%{_mandir}/man1/qemu-system-s390x.1* %{_mandir}/man1/qemu-system-s390x.1*
%{_datadir}/%{name}/s390-ccw.img %{_datadir}/%{name}/s390-ccw.img
%{_datadir}/%{name}/s390-netboot.img %{_datadir}/%{name}/s390-netboot.img
%ifarch s390x
%{_sysconfdir}/sysctl.d/50-kvm-s390x.conf
%endif
%files system-sh4 %files system-sh4
@ -1671,6 +1642,7 @@ getent passwd qemu >/dev/null || \
%if 0%{?need_qemu_kvm} %if 0%{?need_qemu_kvm}
%{_bindir}/qemu-kvm %{_bindir}/qemu-kvm
%{_mandir}/man1/qemu-kvm.1* %{_mandir}/man1/qemu-kvm.1*
%config(noreplace) %{_sysconfdir}/modprobe.d/kvm.conf
%endif %endif
@ -1684,14 +1656,47 @@ getent passwd qemu >/dev/null || \
%changelog %changelog
* Thu May 10 2018 David Abdurachmanov <david.abdurachmanov@gmail.com> - 2:2.12.0-1.2.riscv64 * Mon Jan 21 2019 David Abdurachmanov <david.abdurachmanov@gmail.com> - 2:3.1.0-4.0.riscv64
- Re-enable systemtap (stap) for riscv64 - Enable support for RISC-V (riscv64)
* Thu May 10 2018 David Abdurachmanov <david.abdurachmanov@gmail.com> - 2:2.12.0-1.1.riscv64 * Sat Jan 12 2019 Richard W.M. Jones <rjones@redhat.com> - 2:3.1.0-4
- Add BuildRequires: libatomic-static for riscv64 - Remove temporary patch and rebuild against fixed capstone.
* Wed May 09 2018 David Abdurachmanov <david.abdurachmanov@gmail.com> - 2:2.12.0-1.0.riscv64 * Fri Jan 11 2019 Richard W.M. Jones <rjones@redhat.com> - 2:3.1.0-3
- Enable riscv64 as host - Rebuild for unannounced libcapstone soname bump from 3 to 4.
- Add a temporary patch to fix capstone header location.
* Tue Dec 18 2018 Adam Williamson <awilliam@redhat.com> - 2:3.1.0-1.1
- Restore patch to drop phantom 86 key from en-us keymap (bz #1658676)
* Tue Dec 11 2018 Cole Robinson <crobinso@redhat.com> - 2:3.1.0-1
- Rebase to qemu-3.1.0 GA
* Mon Dec 10 2018 Daniel P. Berrangé <berrange@redhat.com> - 2:3.1.0-0.2.rc1
- Disable RBD on 32-bit arches
* Thu Nov 15 2018 Cole Robinson <crobinso@redhat.com> - 2:3.1.0-0.1.rc1
- Rebase to qemu-3.1.0-rc1
* Wed Aug 15 2018 Cole Robinson <crobinso@redhat.com> - 2:3.0.0-1
- Rebase to qemu-3.0.0 GA
* Mon Aug 13 2018 Cole Robinson <crobinso@redhat.com> - 2:3.0.0-0.2.rc3
- Drop ksm package, moved to ksmtuned srpm
* Tue Jul 31 2018 Cole Robinson <crobinso@redhat.com> - 2:3.0.0-0.1.rc3
- Rebase to qemu-3.0.0-rc3
- Drop now unneeded s390x conf (bz #1609706)
- Only install modprobe kvm.conf on x86 (bz #1517989)
* Fri Jul 13 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2:2.12.0-4
- Rebuild for Xen 4.11
* Mon Jun 18 2018 Daniel P. Berrangé <berrange@redhat.com> - 2:2.12.0-3
- New CPU features for speculative store bypass (CVE-2018-3639)
* Tue Jun 05 2018 Cole Robinson <crobinso@redhat.com> - 2:2.12.0-2
- Fix qxl memslot_get_virt crashes (bz #1565354)
* Mon Apr 30 2018 Cole Robinson <crobinso@redhat.com> - 2:2.12.0-1 * Mon Apr 30 2018 Cole Robinson <crobinso@redhat.com> - 2:2.12.0-1
- Update to qemu-2.12.0 GA - Update to qemu-2.12.0 GA

View File

@ -1 +1 @@
SHA512 (qemu-2.12.0.tar.xz) = dda057c52cf5fe460b029448049266ace061d21fb5f1cf71a6a37f67b3b7fc3350f6712bf22803fc38fa91f0bd438896ba01b5817b3b94ba9b6925aeaae053b7 SHA512 (qemu-3.1.0.tar.xz) = 7e8dae823937cfac2f0c60406bd3bdcb89df40313dab2a4bed327d5198f7fcc68ac8b31e44692caa09299cc71256ee0b8c17e4f49f78ada8043d424f5daf82fe