Rebase to qemu-5.1.0

This commit is contained in:
Danilo C. L. de Paula 2020-08-12 11:53:34 -04:00
parent aaa55b9cc8
commit 2b808133e8
36 changed files with 900 additions and 398 deletions

1
.gitignore vendored
View File

@ -11,3 +11,4 @@
/qemu-5.0.0-rc3.tar.xz
/qemu-5.0.0-rc4.tar.xz
/qemu-5.0.0.tar.xz
/qemu-5.1.0.tar.xz

View File

@ -1,6 +1,6 @@
From effec13a9f842205be3526bcfb15e2068c0067b0 Mon Sep 17 00:00:00 2001
From a71208a6b42d0ef657b2f712d2f08d2ed40e7094 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Thu, 23 Apr 2020 05:26:54 +0200
Date: Wed, 29 Jul 2020 07:48:57 +0200
Subject: redhat: Adding slirp to the exploded tree
RH-Author: Danilo de Paula <ddepaula@redhat.com>
@ -46,8 +46,8 @@ This is an exploded-tree-only change and shouldn't be applied to dist-git.
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
Rebase notes (5.0.0-rc4):
- Update slirp directory to commit 2faae0f778 (used upstream)
Rebase notes (5.1.0-rc2):
- Update slirp directory to commit ce94eba2042d52a0ba3d9e252ebce86715e94275 (used upstream)
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
@ -63,7 +63,7 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
slirp/build-aux/git-version-gen | 158 ++++
slirp/build-aux/meson-dist | 16 +
slirp/meson.build | 134 +++
slirp/src/arp_table.c | 91 ++
slirp/src/arp_table.c | 92 ++
slirp/src/bootp.c | 369 ++++++++
slirp/src/bootp.h | 129 +++
slirp/src/cksum.c | 179 ++++
@ -75,11 +75,11 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
slirp/src/if.h | 25 +
slirp/src/ip.h | 242 +++++
slirp/src/ip6.h | 214 +++++
slirp/src/ip6_icmp.c | 434 +++++++++
slirp/src/ip6_icmp.c | 433 +++++++++
slirp/src/ip6_icmp.h | 219 +++++
slirp/src/ip6_input.c | 78 ++
slirp/src/ip6_input.c | 85 ++
slirp/src/ip6_output.c | 39 +
slirp/src/ip_icmp.c | 489 ++++++++++
slirp/src/ip_icmp.c | 492 ++++++++++
slirp/src/ip_icmp.h | 166 ++++
slirp/src/ip_input.c | 461 +++++++++
slirp/src/ip_output.c | 169 ++++
@ -92,13 +92,13 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
slirp/src/misc.c | 390 ++++++++
slirp/src/misc.h | 72 ++
slirp/src/ncsi-pkt.h | 445 +++++++++
slirp/src/ncsi.c | 192 ++++
slirp/src/ncsi.c | 193 ++++
slirp/src/ndp_table.c | 87 ++
slirp/src/sbuf.c | 168 ++++
slirp/src/sbuf.h | 27 +
slirp/src/slirp.c | 1185 ++++++++++++++++++++++++
slirp/src/slirp.h | 283 ++++++
slirp/src/socket.c | 957 +++++++++++++++++++
slirp/src/slirp.h | 284 ++++++
slirp/src/socket.c | 954 +++++++++++++++++++
slirp/src/socket.h | 164 ++++
slirp/src/state.c | 379 ++++++++
slirp/src/stream.c | 120 +++
@ -111,9 +111,9 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
slirp/src/tcp_timer.h | 130 +++
slirp/src/tcp_var.h | 161 ++++
slirp/src/tcpip.h | 104 +++
slirp/src/tftp.c | 462 ++++++++++
slirp/src/tftp.h | 52 ++
slirp/src/udp.c | 361 ++++++++
slirp/src/tftp.c | 464 ++++++++++
slirp/src/tftp.h | 54 ++
slirp/src/udp.c | 365 ++++++++
slirp/src/udp.h | 90 ++
slirp/src/udp6.c | 173 ++++
slirp/src/util.c | 428 +++++++++
@ -121,7 +121,7 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
slirp/src/version.c | 8 +
slirp/src/vmstate.c | 444 +++++++++
slirp/src/vmstate.h | 391 ++++++++
70 files changed, 16423 insertions(+), 3 deletions(-)
70 files changed, 16440 insertions(+), 3 deletions(-)
create mode 100644 slirp/.clang-format
create mode 100644 slirp/.gitignore
create mode 100644 slirp/.gitlab-ci.yml
@ -880,10 +880,10 @@ index 0000000000..3a27149373
+)
diff --git a/slirp/src/arp_table.c b/slirp/src/arp_table.c
new file mode 100644
index 0000000000..054fbf5e10
index 0000000000..959e5b9ec0
--- /dev/null
+++ b/slirp/src/arp_table.c
@@ -0,0 +1,91 @@
@@ -0,0 +1,92 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * ARP table
@ -913,7 +913,8 @@ index 0000000000..054fbf5e10
+
+#include <string.h>
+
+void arp_table_add(Slirp *slirp, uint32_t ip_addr, uint8_t ethaddr[ETH_ALEN])
+void arp_table_add(Slirp *slirp, uint32_t ip_addr,
+ const uint8_t ethaddr[ETH_ALEN])
+{
+ const uint32_t broadcast_addr =
+ ~slirp->vnetwork_mask.s_addr | slirp->vnetwork_addr.s_addr;
@ -2033,7 +2034,7 @@ index 0000000000..d12c49b36c
+#endif
diff --git a/slirp/src/dnssearch.c b/slirp/src/dnssearch.c
new file mode 100644
index 0000000000..e8f14e34bb
index 0000000000..55497e860e
--- /dev/null
+++ b/slirp/src/dnssearch.c
@@ -0,0 +1,306 @@
@ -2278,7 +2279,7 @@ index 0000000000..e8f14e34bb
+ uint8_t *result = NULL, *outptr;
+ CompactDomain *domains = NULL;
+
+ num_domains = g_strv_length((GStrv)names);
+ num_domains = g_strv_length((GStrv)(void *)names);
+ if (num_domains == 0) {
+ return -2;
+ }
@ -3063,10 +3064,10 @@ index 0000000000..0630309d29
+#endif
diff --git a/slirp/src/ip6_icmp.c b/slirp/src/ip6_icmp.c
new file mode 100644
index 0000000000..28ec2bee35
index 0000000000..d9c872bc97
--- /dev/null
+++ b/slirp/src/ip6_icmp.c
@@ -0,0 +1,434 @@
@@ -0,0 +1,433 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Copyright (c) 2013
@ -3188,7 +3189,6 @@ index 0000000000..28ec2bee35
+ break;
+ default:
+ g_assert_not_reached();
+ break;
+ }
+ t->m_data += ICMP6_ERROR_MINLEN;
+ memcpy(t->m_data, m->m_data, error_data_len);
@ -3728,10 +3728,10 @@ index 0000000000..c37e60f28d
+#endif
diff --git a/slirp/src/ip6_input.c b/slirp/src/ip6_input.c
new file mode 100644
index 0000000000..dfcbfd6a78
index 0000000000..a83e4f8e3d
--- /dev/null
+++ b/slirp/src/ip6_input.c
@@ -0,0 +1,78 @@
@@ -0,0 +1,85 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Copyright (c) 2013
@ -3778,11 +3778,18 @@ index 0000000000..dfcbfd6a78
+ goto bad;
+ }
+
+ if (ntohs(ip6->ip_pl) > slirp->if_mtu) {
+ if (ntohs(ip6->ip_pl) + sizeof(struct ip6) > slirp->if_mtu) {
+ icmp6_send_error(m, ICMP6_TOOBIG, 0);
+ goto bad;
+ }
+
+ // Check if the message size is big enough to hold what's
+ // set in the payload length header. If not this is an invalid
+ // packet
+ if (m->m_len < ntohs(ip6->ip_pl) + sizeof(struct ip6)) {
+ goto bad;
+ }
+
+ /* check ip_ttl for a correct ICMP reply */
+ if (ip6->ip_hl == 0) {
+ icmp6_send_error(m, ICMP6_TIMXCEED, ICMP6_TIMXCEED_INTRANS);
@ -3857,10 +3864,10 @@ index 0000000000..b86110662c
+}
diff --git a/slirp/src/ip_icmp.c b/slirp/src/ip_icmp.c
new file mode 100644
index 0000000000..fe0add438d
index 0000000000..13a0e55085
--- /dev/null
+++ b/slirp/src/ip_icmp.c
@@ -0,0 +1,489 @@
@@ -0,0 +1,492 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Copyright (c) 1982, 1986, 1988, 1993
@ -3938,8 +3945,11 @@ index 0000000000..fe0add438d
+
+void icmp_cleanup(Slirp *slirp)
+{
+ while (slirp->icmp.so_next != &slirp->icmp) {
+ icmp_detach(slirp->icmp.so_next);
+ struct socket *so, *so_next;
+
+ for (so = slirp->icmp.so_next; so != &slirp->icmp; so = so_next) {
+ so_next = so->so_next;
+ icmp_detach(so);
+ }
+}
+
@ -4137,8 +4147,8 @@ index 0000000000..fe0add438d
+ ip = mtod(msrc, struct ip *);
+ if (slirp_debug & DBG_MISC) {
+ char bufa[20], bufb[20];
+ strcpy(bufa, inet_ntoa(ip->ip_src));
+ strcpy(bufb, inet_ntoa(ip->ip_dst));
+ slirp_pstrcpy(bufa, sizeof(bufa), inet_ntoa(ip->ip_src));
+ slirp_pstrcpy(bufb, sizeof(bufb), inet_ntoa(ip->ip_dst));
+ DEBUG_MISC(" %.16s to %.16s", bufa, bufb);
+ }
+ if (ip->ip_off & IP_OFFMASK)
@ -4524,7 +4534,7 @@ index 0000000000..84707db247
+#endif
diff --git a/slirp/src/ip_input.c b/slirp/src/ip_input.c
new file mode 100644
index 0000000000..89a01d45aa
index 0000000000..7f017a238a
--- /dev/null
+++ b/slirp/src/ip_input.c
@@ -0,0 +1,461 @@
@ -4984,7 +4994,7 @@ index 0000000000..89a01d45aa
+ olen = (ip->ip_hl << 2) - sizeof(struct ip);
+ opts = (char *)(ip + 1);
+ i = m->m_len - (sizeof(struct ip) + olen);
+ memcpy(opts, opts + olen, (unsigned)i);
+ memmove(opts, opts + olen, (unsigned)i);
+ m->m_len -= olen;
+
+ ip->ip_hl = sizeof(struct ip) >> 2;
@ -6720,10 +6730,10 @@ index 0000000000..7795ad83ee
+#endif /* NCSI_PKT_H */
diff --git a/slirp/src/ncsi.c b/slirp/src/ncsi.c
new file mode 100644
index 0000000000..ddd980d869
index 0000000000..3c1dfef1ff
--- /dev/null
+++ b/slirp/src/ncsi.c
@@ -0,0 +1,192 @@
@@ -0,0 +1,193 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * NC-SI (Network Controller Sideband Interface) "echo" model
@ -6862,7 +6872,8 @@ index 0000000000..ddd980d869
+
+void ncsi_input(Slirp *slirp, const uint8_t *pkt, int pkt_len)
+{
+ struct ncsi_pkt_hdr *nh = (struct ncsi_pkt_hdr *)(pkt + ETH_HLEN);
+ const struct ncsi_pkt_hdr *nh =
+ (const struct ncsi_pkt_hdr *)(pkt + ETH_HLEN);
+ uint8_t ncsi_reply[ETH_HLEN + NCSI_MAX_LEN];
+ struct ethhdr *reh = (struct ethhdr *)ncsi_reply;
+ struct ncsi_rsp_pkt_hdr *rnh =
@ -7218,7 +7229,7 @@ index 0000000000..01886fbd01
+#endif
diff --git a/slirp/src/slirp.c b/slirp/src/slirp.c
new file mode 100644
index 0000000000..14458e8510
index 0000000000..dba7c98163
--- /dev/null
+++ b/slirp/src/slirp.c
@@ -0,0 +1,1185 @@
@ -7968,7 +7979,8 @@ index 0000000000..14458e8510
+
+static void arp_input(Slirp *slirp, const uint8_t *pkt, int pkt_len)
+{
+ struct slirp_arphdr *ah = (struct slirp_arphdr *)(pkt + ETH_HLEN);
+ const struct slirp_arphdr *ah =
+ (const struct slirp_arphdr *)(pkt + ETH_HLEN);
+ uint8_t arp_reply[MAX(ETH_HLEN + sizeof(struct slirp_arphdr), 64)];
+ struct ethhdr *reh = (struct ethhdr *)arp_reply;
+ struct slirp_arphdr *rah = (struct slirp_arphdr *)(arp_reply + ETH_HLEN);
@ -8191,7 +8203,6 @@ index 0000000000..14458e8510
+
+ default:
+ g_assert_not_reached();
+ break;
+ }
+
+ memcpy(eh->h_dest, ethaddr, ETH_ALEN);
@ -8409,10 +8420,10 @@ index 0000000000..14458e8510
+}
diff --git a/slirp/src/slirp.h b/slirp/src/slirp.h
new file mode 100644
index 0000000000..32634bcc00
index 0000000000..763a65b9ef
--- /dev/null
+++ b/slirp/src/slirp.h
@@ -0,0 +1,283 @@
@@ -0,0 +1,284 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+#ifndef SLIRP_H
+#define SLIRP_H
@ -8513,7 +8524,8 @@ index 0000000000..32634bcc00
+ int next_victim;
+} ArpTable;
+
+void arp_table_add(Slirp *slirp, uint32_t ip_addr, uint8_t ethaddr[ETH_ALEN]);
+void arp_table_add(Slirp *slirp, uint32_t ip_addr,
+ const uint8_t ethaddr[ETH_ALEN]);
+
+bool arp_table_search(Slirp *slirp, uint32_t ip_addr,
+ uint8_t out_ethaddr[ETH_ALEN]);
@ -8698,10 +8710,10 @@ index 0000000000..32634bcc00
+#endif
diff --git a/slirp/src/socket.c b/slirp/src/socket.c
new file mode 100644
index 0000000000..4cd9a64b3c
index 0000000000..1e385df0d8
--- /dev/null
+++ b/slirp/src/socket.c
@@ -0,0 +1,957 @@
@@ -0,0 +1,954 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Copyright (c) 1995 Danny Gasparovski.
@ -9255,7 +9267,6 @@ index 0000000000..4cd9a64b3c
+ break;
+ default:
+ g_assert_not_reached();
+ break;
+ }
+
+ /*
@ -9307,7 +9318,6 @@ index 0000000000..4cd9a64b3c
+ break;
+ default:
+ g_assert_not_reached();
+ break;
+ }
+ m_free(m);
+ } else {
@ -9343,7 +9353,6 @@ index 0000000000..4cd9a64b3c
+ break;
+ default:
+ g_assert_not_reached();
+ break;
+ }
+ } /* rx error */
+ } /* if ping packet */
@ -14316,10 +14325,10 @@ index 0000000000..d3df021493
+#endif
diff --git a/slirp/src/tftp.c b/slirp/src/tftp.c
new file mode 100644
index 0000000000..c209145282
index 0000000000..c6950ee10f
--- /dev/null
+++ b/slirp/src/tftp.c
@@ -0,0 +1,462 @@
@@ -0,0 +1,464 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * tftp.c - a simple, read-only tftp server for qemu
@ -14440,7 +14449,9 @@ index 0000000000..c209145282
+ }
+
+ if (len) {
+ lseek(spt->fd, block_nr * spt->block_size, SEEK_SET);
+ if (lseek(spt->fd, block_nr * spt->block_size, SEEK_SET) == (off_t)-1) {
+ return -1;
+ }
+
+ bytes_read = read(spt->fd, buf, len);
+ }
@ -14784,16 +14795,18 @@ index 0000000000..c209145282
+}
diff --git a/slirp/src/tftp.h b/slirp/src/tftp.h
new file mode 100644
index 0000000000..c47bb43c7d
index 0000000000..6d75478e83
--- /dev/null
+++ b/slirp/src/tftp.h
@@ -0,0 +1,52 @@
@@ -0,0 +1,54 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/* tftp defines */
+
+#ifndef SLIRP_TFTP_H
+#define SLIRP_TFTP_H
+
+#include "util.h"
+
+#define TFTP_SESSIONS_MAX 20
+
+#define TFTP_SERVER 69
@ -14822,7 +14835,7 @@ index 0000000000..c47bb43c7d
+ } tp_error;
+ char tp_buf[TFTP_BLOCKSIZE_MAX + 2];
+ } x;
+} __attribute__((packed));
+} SLIRP_PACKED;
+
+struct tftp_session {
+ Slirp *slirp;
@ -14842,10 +14855,10 @@ index 0000000000..c47bb43c7d
+#endif
diff --git a/slirp/src/udp.c b/slirp/src/udp.c
new file mode 100644
index 0000000000..6bde20fafa
index 0000000000..0ad44d7c03
--- /dev/null
+++ b/slirp/src/udp.c
@@ -0,0 +1,361 @@
@@ -0,0 +1,365 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+/*
+ * Copyright (c) 1982, 1986, 1988, 1990, 1993
@ -14900,7 +14913,10 @@ index 0000000000..6bde20fafa
+
+void udp_cleanup(Slirp *slirp)
+{
+ while (slirp->udb.so_next != &slirp->udb) {
+ struct socket *so, *so_next;
+
+ for (so = slirp->udb.so_next; so != &slirp->udb; so = so_next) {
+ so_next = so->so_next;
+ udp_detach(slirp->udb.so_next);
+ }
+}
@ -15174,6 +15190,7 @@ index 0000000000..6bde20fafa
+ struct socket *so;
+ socklen_t addrlen = sizeof(struct sockaddr_in);
+
+ memset(&addr, 0, sizeof(addr));
+ so = socreate(slirp);
+ so->s = slirp_socket(AF_INET, SOCK_DGRAM, 0);
+ if (so->s < 0) {
@ -15484,7 +15501,7 @@ index 0000000000..6f9486bbca
+}
diff --git a/slirp/src/util.c b/slirp/src/util.c
new file mode 100644
index 0000000000..570c53f303
index 0000000000..d3ed5faf8b
--- /dev/null
+++ b/slirp/src/util.c
@@ -0,0 +1,428 @@
@ -15882,7 +15899,7 @@ index 0000000000..570c53f303
+ rv = slirp_vsnprintf(str, size, format, args);
+ va_end(args);
+
+ if (rv > size) {
+ if (rv >= size) {
+ g_critical("slirp_fmt() truncation");
+ }
+

View File

@ -1,4 +1,4 @@
From 9f51ea3d645d7da3eaf55f3e5cedc4cd42981efc Mon Sep 17 00:00:00 2001
From cf7532e0c854b385ee7acdf5788bc407172f7ae9 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Fri, 12 Oct 2018 07:31:11 +0200
Subject: Initial redhat build
@ -47,52 +47,24 @@ Rebase notes (4.2.0):
- Removed spapr-rtas.bin (upstream)
- Require newer SLOF (20191022)
Rebase notes (weekly-200115):
- Added index.html (upstream)
Rebase notes (weekly-200122):
Rebase notes (5.1.0):
- Use python3 for virtio_seg_max_adjust.py test
- Removed qemu-trace-stap shebang from spec file
Rebase notes (weekly-200129):
- Ship docs/qemu-kvm/system help files (added upstream)
Rebase notes (weekly-200212):
- Added virtiofsd.1 (upstream)
Rebase notes (weekly-200219):
- Use out-of-tree build
Rebase notes (weekly-200226):
- added tools documentation (upstream)
Rebase notes (weekly-200304):
- New documentation structure (upstream)
- Update local build
Rebase notes (weekly-200311):
- Add docs/qemu-kvm/user help files (added upstream)
- Removing installed qemu-storage-daemon (added upstream)
Rebase notes (weekly-200318):
- Removing opensbi-riscv32-sifive_u-fw_jump.bin (added upstream)
Rebase notes (weekly-200325):
- Disable iotests (moved from Enable make check commit)
Rebase notes (5.0.0 rc2):
- Added missing configure options
Rebase notes (5.0.0 rc3):
- Reorder configure options
Rebase notes (weekly-200617):
- Fixing qemu-kvm-tests rpm content
- Fixed python shenigans
- Include all qemu-iotests files
- qemu-pr-helper moved to /usr/libexec/ (upstream)
Rebase notes (weekly-200701):
- Moved qemu-ga-ref.* and qemu-qmp-ref.* docs files to interop diretory (upstream)
- Added submodules for usb-redir, smartcard-reader and qxl display (upstream)
- Added setting rc version in Makefile for build
- removed --disable-vxhs configure option (removed upstream)
- bumped required libusbx-devel version to 1.0.23
- bumped libfdt version to 1.6.0
Merged patches (3.1.0):
- 01f0c9f RHEL8: Add disable configure options to qemu spec file
@ -116,15 +88,11 @@ Merged patches (4.2.0):
- 69e1fb2 enable virgla
- d4f6115 enable virgl, for real this time ...
Merged patches (weekly-200205):
Merged patches (5.1.0):
- 5edf6bd Add support for rh-brew-module
- f77d52d redhat: ship virtiofsd vhost-user device backend
Merged patches (weekly-200610):
- 63f12d4 redhat: Always use module build target for rh-brew (modified)
- 9b1e140 redhat: updating the modular target
Merged patches (weekly-200617):
- 44b8bd0 spec: Fix python shenigans for tests
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
@ -133,22 +101,22 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
Makefile | 3 +-
configure | 1 +
redhat/Makefile | 86 +
redhat/Makefile.common | 53 +
redhat/Makefile.common | 54 +
redhat/README.tests | 39 +
redhat/qemu-kvm.spec.template | 2961 +++++++++++++++++++++++++++
redhat/qemu-kvm.spec.template | 2977 +++++++++++++++++++++++++++
redhat/qemu-pr-helper.service | 2 +-
redhat/scripts/extract_build_cmd.py | 2 +-
redhat/scripts/process-patches.sh | 7 +-
redhat/scripts/process-patches.sh | 17 +-
tests/check-block.sh | 2 +
ui/vnc.c | 2 +-
12 files changed, 3150 insertions(+), 9 deletions(-)
12 files changed, 3173 insertions(+), 13 deletions(-)
create mode 100644 redhat/Makefile
create mode 100644 redhat/Makefile.common
create mode 100644 redhat/README.tests
create mode 100644 redhat/qemu-kvm.spec.template
diff --git a/Makefile b/Makefile
index b1b8a5a6d0..88b7565246 100644
index 13dd708c4a..42e854b2b1 100644
--- a/Makefile
+++ b/Makefile
@@ -549,6 +549,7 @@ CAP_CFLAGS += -DCAPSTONE_HAS_ARM
@ -159,7 +127,7 @@ index b1b8a5a6d0..88b7565246 100644
.PHONY: capstone/all
capstone/all: .git-submodule-status
@@ -878,7 +879,7 @@ install-doc: $(DOCS) install-sphinxdocs
@@ -879,7 +880,7 @@ install-doc: $(DOCS) install-sphinxdocs
$(INSTALL_DATA) docs/interop/qemu-qmp-ref.txt "$(DESTDIR)$(qemu_docdir)/interop"
ifdef CONFIG_POSIX
$(INSTALL_DIR) "$(DESTDIR)$(mandir)/man1"
@ -169,10 +137,10 @@ index b1b8a5a6d0..88b7565246 100644
$(INSTALL_DATA) docs/interop/qemu-qmp-ref.7 "$(DESTDIR)$(mandir)/man7"
$(INSTALL_DATA) $(MANUAL_BUILDDIR)/system/qemu-block-drivers.7 "$(DESTDIR)$(mandir)/man7"
diff --git a/configure b/configure
index ee6c3c6792..bd957a5a26 100755
index 2acc4d1465..eb5b695dbe 100755
--- a/configure
+++ b/configure
@@ -2610,6 +2610,7 @@ if test "$seccomp" != "no" ; then
@@ -2633,6 +2633,7 @@ if test "$seccomp" != "no" ; then
seccomp="no"
fi
fi
@ -194,7 +162,7 @@ index 8e29c868e5..e9bcb5ac27 100755
ret=0
diff --git a/ui/vnc.c b/ui/vnc.c
index 527ad25124..8099c0ee13 100644
index f006aa1afd..992f428fec 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -3970,7 +3970,7 @@ void vnc_display_open(const char *id, Error **errp)

View File

@ -1,4 +1,4 @@
From c956c1d145adb87a8a830bf6091dac80b7925054 Mon Sep 17 00:00:00 2001
From 3c93dbb29fed4f555904494efe9b823310a14604 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Mon, 11 Jan 2016 11:53:33 +0100
Subject: Enable/disable devices for RHEL
@ -39,17 +39,13 @@ Rebase notes (4.2.0-rc3):
- Disabled ccid-card-emulated (patch 92566)
- Disabled vfio-pci-igd-lpc-bridge (patch 92565)
Rebase notes (weekly-200205):
Rebase notes (5.1.0):
- added CONFIG_PCI_EXPRESS on ppc64 (due to upstream dependency)
Rebase notes (weekly-200226):
- Added CONFIG_NVDIMM
Rebase notes (weekly-200513)
- updated cortex-15 disabling to upstream code
Rebase notes (weekly-200520):
- Add CONFIG_ACPI_APEI for aarch64
- removed obsolete hw/bt/Makefile.objs chunk
- removed unnecessary changes in target/i386/cpu.c
Merged patches (qemu 3.1.0):
- d51e082 Re-enable CONFIG_HYPERV_TESTDEV
@ -69,13 +65,9 @@ Merged patches (4.1.0):
Merged patches (4.2.0):
- f7587dd RHEL: disable hostmem-memfd
Merged patches (weekly-200108):
Merged patches (weekly-5.1.0):
- 4543a3c i386: Remove cpu64-rhel6 CPU model
Merged patches (weekly-200520):
- 96533 aarch64: Remove tcg cpu types (pjw commit)
Merged patches (weekly-200610):
- 559d589 Revert "RHEL: disable hostmem-memfd"
- 441128e enable ramfb
@ -93,7 +85,6 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
hw/acpi/ich9.c | 4 +-
hw/arm/Makefile.objs | 2 +-
hw/block/fdc.c | 10 +++
hw/bt/Makefile.objs | 3 +
hw/cpu/Makefile.objs | 5 +-
hw/display/cirrus_vga.c | 3 +
hw/ide/piix.c | 5 +-
@ -106,17 +97,16 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
softmmu/vl.c | 2 +-
target/arm/cpu.c | 4 +-
target/arm/cpu_tcg.c | 3 +
target/i386/cpu.c | 17 +++--
target/i386/cpu.c | 1 +
target/ppc/cpu-models.c | 10 +++
target/s390x/cpu_models.c | 3 +
target/s390x/kvm.c | 8 ++
29 files changed, 274 insertions(+), 33 deletions(-)
28 files changed, 263 insertions(+), 25 deletions(-)
create mode 100644 default-configs/aarch64-rh-devices.mak
create mode 100644 default-configs/ppc64-rh-devices.mak
create mode 100644 default-configs/rh-virtio.mak
create mode 100644 default-configs/s390x-rh-devices.mak
create mode 100644 default-configs/x86_64-rh-devices.mak
create mode 100644 hw/bt/Makefile.objs
diff --git a/default-configs/aarch64-rh-devices.mak b/default-configs/aarch64-rh-devices.mak
new file mode 100644
@ -394,7 +384,7 @@ index 64b2ee2960..b5de7e5279 100644
+
+include x86_64-rh-devices.mak
diff --git a/hw/acpi/ich9.c b/hw/acpi/ich9.c
index 2d204babc6..7ead029e68 100644
index 6a19070cec..bb8379f6a7 100644
--- a/hw/acpi/ich9.c
+++ b/hw/acpi/ich9.c
@@ -374,8 +374,8 @@ void ich9_pm_add_properties(Object *obj, ICH9LPCPMRegs *pm)
@ -422,7 +412,7 @@ index 534a6a119e..bd62442b54 100644
obj-$(CONFIG_PXA2XX) += pxa2xx.o pxa2xx_gpio.o pxa2xx_pic.o
obj-$(CONFIG_DIGIC) += digic.o
diff --git a/hw/block/fdc.c b/hw/block/fdc.c
index 3425d56e2a..f4ae220905 100644
index e9ed3eef45..965528a512 100644
--- a/hw/block/fdc.c
+++ b/hw/block/fdc.c
@@ -47,6 +47,8 @@
@ -434,7 +424,7 @@ index 3425d56e2a..f4ae220905 100644
/********************************************************/
/* debug Floppy devices */
@@ -2625,6 +2627,14 @@ static void fdctrl_realize_common(DeviceState *dev, FDCtrl *fdctrl,
@@ -2621,6 +2623,14 @@ static void fdctrl_realize_common(DeviceState *dev, FDCtrl *fdctrl,
int i, j;
static int command_tables_inited = 0;
@ -449,15 +439,6 @@ index 3425d56e2a..f4ae220905 100644
if (fdctrl->fallback == FLOPPY_DRIVE_TYPE_AUTO) {
error_setg(errp, "Cannot choose a fallback FDrive type of 'auto'");
return;
diff --git a/hw/bt/Makefile.objs b/hw/bt/Makefile.objs
new file mode 100644
index 0000000000..e678e9ee3c
--- /dev/null
+++ b/hw/bt/Makefile.objs
@@ -0,0 +1,3 @@
+#common-obj-y += core.o l2cap.o sdp.o hci.o hid.o
+#common-obj-y += hci-csr.o
+
diff --git a/hw/cpu/Makefile.objs b/hw/cpu/Makefile.objs
index 8db9e8a7b3..1601ea93c7 100644
--- a/hw/cpu/Makefile.objs
@ -542,10 +523,10 @@ index a18f80e369..960b2f00ee 100644
static void e1000_register_types(void)
diff --git a/hw/ppc/spapr_cpu_core.c b/hw/ppc/spapr_cpu_core.c
index 26ad566f42..bfdf6b3e5c 100644
index c4f47dcc04..6a2239d5e5 100644
--- a/hw/ppc/spapr_cpu_core.c
+++ b/hw/ppc/spapr_cpu_core.c
@@ -396,10 +396,12 @@ static const TypeInfo spapr_cpu_core_type_infos[] = {
@@ -389,10 +389,12 @@ static const TypeInfo spapr_cpu_core_type_infos[] = {
.instance_size = sizeof(SpaprCpuCore),
.class_size = sizeof(SpaprCpuCoreClass),
},
@ -559,25 +540,25 @@ index 26ad566f42..bfdf6b3e5c 100644
DEFINE_SPAPR_CPU_CORE_TYPE("power7+_v2.1"),
DEFINE_SPAPR_CPU_CORE_TYPE("power8_v2.0"),
diff --git a/hw/usb/Makefile.objs b/hw/usb/Makefile.objs
index fa5c3fa1b8..854094c4f2 100644
index e342ff59fa..abf044a20f 100644
--- a/hw/usb/Makefile.objs
+++ b/hw/usb/Makefile.objs
@@ -30,7 +30,9 @@ common-obj-$(CONFIG_USB_NETWORK) += dev-network.o
ifeq ($(CONFIG_USB_SMARTCARD),y)
@@ -31,7 +31,9 @@ ifeq ($(CONFIG_USB_SMARTCARD),y)
common-obj-y += dev-smartcard-reader.o
common-obj-$(CONFIG_SMARTCARD) += smartcard.mo
ifeq ($(CONFIG_SMARTCARD),y)
common-obj-m += smartcard.mo
-smartcard.mo-objs := ccid-card-passthru.o ccid-card-emulated.o
+# Disabled for Red Hat Enterprise Linux:
+# smartcard.mo-objs := ccid-card-passthru.o ccid-card-emulated.o
+#smartcard.mo-objs := ccid-card-passthru.o ccid-card-emulated.o
+smartcard.mo-objs := ccid-card-passthru.o
smartcard.mo-cflags := $(SMARTCARD_CFLAGS)
smartcard.mo-libs := $(SMARTCARD_LIBS)
endif
diff --git a/qemu-options.hx b/qemu-options.hx
index fa1b19de4c..b9699440a3 100644
index 708583b4ce..1700205035 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -2248,10 +2248,6 @@ ERST
@@ -2257,10 +2257,6 @@ ERST
DEF("no-hpet", 0, QEMU_OPTION_no_hpet,
"-no-hpet disable HPET\n", QEMU_ARCH_I386)
@ -589,7 +570,7 @@ index fa1b19de4c..b9699440a3 100644
DEF("acpitable", HAS_ARG, QEMU_OPTION_acpitable,
"-acpitable [sig=str][,rev=n][,oem_id=str][,oem_table_id=str][,oem_rev=n][,asl_compiler_id=str][,asl_compiler_rev=n][,{data|file}=file1[:file2]...]\n"
diff --git a/softmmu/vl.c b/softmmu/vl.c
index 9da2e23144..6509057752 100644
index 4eb9d1f7fd..a1fb06dca0 100644
--- a/softmmu/vl.c
+++ b/softmmu/vl.c
@@ -145,7 +145,7 @@ static Chardev **serial_hds;
@ -602,10 +583,10 @@ index 9da2e23144..6509057752 100644
static int no_reboot;
int no_shutdown = 0;
diff --git a/target/arm/cpu.c b/target/arm/cpu.c
index 5050e1843a..79adfe25c4 100644
index 111579554f..13ad40aa7d 100644
--- a/target/arm/cpu.c
+++ b/target/arm/cpu.c
@@ -2335,7 +2335,9 @@ static void arm_cpu_register_types(void)
@@ -2338,7 +2338,9 @@ static void arm_cpu_register_types(void)
type_register_static(&idau_interface_type_info);
for (i = 0; i < cpu_count; ++i) {
@ -631,10 +612,10 @@ index 00b0e08f33..94d429b61c 100644
arm_cpu_register(&arm_tcg_cpus[i]);
}
diff --git a/target/i386/cpu.c b/target/i386/cpu.c
index 36cbd3d027..55a30cd4d9 100644
index 588f32e136..030a5a09ed 100644
--- a/target/i386/cpu.c
+++ b/target/i386/cpu.c
@@ -1825,20 +1825,21 @@ static CPUCaches epyc_rome_cache_info = {
@@ -1825,6 +1825,7 @@ static CPUCaches epyc_rome_cache_info = {
static X86CPUDefinition builtin_x86_defs[] = {
{
@ -642,28 +623,6 @@ index 36cbd3d027..55a30cd4d9 100644
.name = "qemu64",
.level = 0xd,
.vendor = CPUID_VENDOR_AMD,
.family = 6,
.model = 6,
.stepping = 3,
- .features[FEAT_1_EDX] =
- PPRO_FEATURES |
- CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA |
- CPUID_PSE36,
- .features[FEAT_1_ECX] =
- CPUID_EXT_SSE3 | CPUID_EXT_CX16,
- .features[FEAT_8000_0001_EDX] =
- CPUID_EXT2_LM | CPUID_EXT2_SYSCALL | CPUID_EXT2_NX,
+ .features[FEAT_1_EDX] = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR |
+ CPUID_MMX | CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV |
+ CPUID_MCA | CPUID_PGE | CPUID_MTRR | CPUID_SEP | CPUID_APIC |
+ CPUID_CX8 | CPUID_MCE | CPUID_PAE | CPUID_MSR | CPUID_TSC |
+ CPUID_PSE | CPUID_DE | CPUID_FP87,
+ .features[FEAT_1_ECX] = CPUID_EXT_CX16 | CPUID_EXT_SSE3,
+ .features[FEAT_8000_0001_EDX] = CPUID_EXT2_LM | CPUID_EXT2_NX |
+ CPUID_EXT2_SYSCALL,
.features[FEAT_8000_0001_ECX] =
CPUID_EXT3_LAHF_LM | CPUID_EXT3_SVM,
.xlevel = 0x8000000A,
diff --git a/target/ppc/cpu-models.c b/target/ppc/cpu-models.c
index 4ad16863c0..16b2185fd8 100644
--- a/target/ppc/cpu-models.c
@ -735,7 +694,7 @@ index 4ad16863c0..16b2185fd8 100644
{ NULL, NULL }
};
diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
index 2fa609bffe..f6bee3204c 100644
index c2af226174..e35bf745dd 100644
--- a/target/s390x/cpu_models.c
+++ b/target/s390x/cpu_models.c
@@ -404,6 +404,9 @@ static void check_unavailable_features(const S390CPUModel *max_model,

View File

@ -1,4 +1,4 @@
From cbbdd67535fc6da1b77b2fa9f5368f72c211eeb1 Mon Sep 17 00:00:00 2001
From a86a622ecc7b0b3c66d21fdd1c5dd279bfc75a03 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Fri, 11 Jan 2019 09:54:45 +0100
Subject: Machine type related general changes
@ -70,7 +70,7 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
23 files changed, 354 insertions(+), 11 deletions(-)
diff --git a/hw/acpi/ich9.c b/hw/acpi/ich9.c
index 7ead029e68..3b8501fa38 100644
index bb8379f6a7..43ad1ff927 100644
--- a/hw/acpi/ich9.c
+++ b/hw/acpi/ich9.c
@@ -369,6 +369,18 @@ static void ich9_pm_set_enable_tco(Object *obj, bool value, Error **errp)
@ -103,7 +103,7 @@ index 7ead029e68..3b8501fa38 100644
&pm->disable_s3, OBJ_PROP_FLAG_READWRITE);
object_property_add_uint8_ptr(obj, ACPI_PM_PROP_S4_DISABLED,
diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c
index 283422e0d3..f6642011c6 100644
index 26bac4f16c..7c2e17ceb6 100644
--- a/hw/acpi/piix4.c
+++ b/hw/acpi/piix4.c
@@ -276,6 +276,7 @@ static const VMStateDescription vmstate_acpi = {
@ -126,7 +126,7 @@ index 283422e0d3..f6642011c6 100644
DEFINE_PROP_BOOL("acpi-pci-hotplug-with-bridge-support", PIIX4PMState,
use_acpi_hotplug_bridge, true),
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 7d9f7157da..e30b837135 100644
index ecfee362a1..43cf75333b 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1450,7 +1450,7 @@ static void virt_build_smbios(VirtMachineState *vms)
@ -139,7 +139,7 @@ index 7d9f7157da..e30b837135 100644
smbios_get_tables(MACHINE(vms), NULL, 0, &smbios_tables, &smbios_tables_len,
&smbios_anchor, &smbios_anchor_len);
diff --git a/hw/char/serial.c b/hw/char/serial.c
index 9eebcb27e7..11d2d08912 100644
index 2386479492..c83f816f42 100644
--- a/hw/char/serial.c
+++ b/hw/char/serial.c
@@ -35,6 +35,7 @@
@ -194,7 +194,7 @@ index 9eebcb27e7..11d2d08912 100644
}
diff --git a/hw/core/machine.c b/hw/core/machine.c
index 211b4e077a..ef6b320ea7 100644
index 8d1a90c6cf..2b8e480040 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -28,6 +28,176 @@
@ -372,8 +372,8 @@ index 211b4e077a..ef6b320ea7 100644
+const size_t hw_compat_rhel_7_1_len = G_N_ELEMENTS(hw_compat_rhel_7_1);
+
GlobalProperty hw_compat_5_0[] = {
{ "pci-host-bridge", "x-config-reg-migration-enabled", "off" },
{ "virtio-balloon-device", "page-poison", "false" },
{ "vmport", "x-read-set-eax", "off" },
diff --git a/hw/display/vga-isa.c b/hw/display/vga-isa.c
index 3aaeeeca1e..d88f52a587 100644
--- a/hw/display/vga-isa.c
@ -388,7 +388,7 @@ index 3aaeeeca1e..d88f52a587 100644
};
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index fae487f57d..18815e8302 100644
index b789e83f9a..0ecdd57689 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -179,6 +179,8 @@ static void pc_init1(MachineState *machine,
@ -401,7 +401,7 @@ index fae487f57d..18815e8302 100644
}
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index acd6d405f0..a1131e6825 100644
index a3e607a544..b8ea764ce3 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -204,6 +204,8 @@ static void pc_q35_init(MachineState *machine)
@ -535,7 +535,7 @@ index 7a38540cb9..377d861913 100644
}
diff --git a/hw/smbios/smbios.c b/hw/smbios/smbios.c
index ffd98727ee..7818b90c96 100644
index f560826904..8875e83941 100644
--- a/hw/smbios/smbios.c
+++ b/hw/smbios/smbios.c
@@ -56,6 +56,9 @@ static bool smbios_legacy = true;
@ -650,7 +650,7 @@ index 37f7beb3fa..2741edc589 100644
if (s->masterbus) {
USBPort *ports[NB_PORTS];
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
index b330e36fe6..b25cce8f0c 100644
index 67a18fe2b6..38bdfaf3fd 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -3600,9 +3600,27 @@ static const VMStateDescription vmstate_xhci_slot = {
@ -767,10 +767,10 @@ index 02a0ced0a0..67e38a1b13 100644
void smbios_get_tables(MachineState *ms,
const struct smbios_phys_mem_area *mem_array,
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index dce1273c7d..665c4309a2 100644
index 3d7ed3a55e..951e825778 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -102,6 +102,9 @@ typedef struct PCMachineClass {
@@ -103,6 +103,9 @@ typedef struct PCMachineClass {
bool smbios_defaults;
bool smbios_legacy_mode;
bool smbios_uuid_encoded;
@ -794,10 +794,10 @@ index e29a37635b..35ac38c459 100644
+
#endif
diff --git a/migration/migration.c b/migration/migration.c
index 92e44e021e..67d3b75485 100644
index 8fe36339db..bf684185b7 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -128,6 +128,8 @@ enum mig_rp_message_type {
@@ -129,6 +129,8 @@ enum mig_rp_message_type {
MIG_RP_MSG_MAX
};
@ -807,10 +807,10 @@ index 92e44e021e..67d3b75485 100644
migrations at once. For now we don't need to add
dynamic creation of migration */
diff --git a/migration/migration.h b/migration/migration.h
index f617960522..b8bc10d16d 100644
index 6c6a931d0d..721e272713 100644
--- a/migration/migration.h
+++ b/migration/migration.h
@@ -339,6 +339,11 @@ void init_dirty_bitmap_incoming_migration(void);
@@ -340,6 +340,11 @@ void dirty_bitmap_mig_cancel_incoming(void);
void migrate_add_address(SocketAddress *address);
int foreach_not_ignored_block(RAMBlockIterFunc func, void *opaque);

View File

@ -1,4 +1,4 @@
From 1f0568a29b004dd3557d5405fddc6979ac5ff911 Mon Sep 17 00:00:00 2001
From 0ba70804c179d934e5be555abff3c4455ac137a0 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Fri, 19 Oct 2018 12:53:31 +0200
Subject: Add aarch64 machine types
@ -35,6 +35,9 @@ Rebase notes (weekly-200520):
Rebase notes (weekly-200701):
- Added to virt_machine_device_unplug_cb to machine type (upstream)
Rebase notes (5.1.0-rc1):
- added mte property (upstream)
Merged patches (4.0.0):
- 7bfdb4c aarch64: Add virt-rhel8.0.0 machine type for ARM
- 3433e69 aarch64: Set virt-rhel8.0.0 max_cpus to 512
@ -46,12 +49,12 @@ Merged patches (4.1.0):
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/arm/virt.c | 172 +++++++++++++++++++++++++++++++++++++++++-
hw/arm/virt.c | 180 +++++++++++++++++++++++++++++++++++++++++-
include/hw/arm/virt.h | 11 +++
2 files changed, 182 insertions(+), 1 deletion(-)
2 files changed, 188 insertions(+), 3 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index e30b837135..5a45677205 100644
index 43cf75333b..e1a17e7c87 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -79,6 +79,7 @@
@ -113,7 +116,7 @@ index e30b837135..5a45677205 100644
/* Number of external interrupt lines to configure the GIC with */
#define NUM_IRQS 256
@@ -1964,6 +2007,7 @@ static void machvirt_init(MachineState *machine)
@@ -1979,6 +2022,7 @@ static void machvirt_init(MachineState *machine)
qemu_add_machine_init_done_notifier(&vms->machine_done);
}
@ -121,7 +124,7 @@ index e30b837135..5a45677205 100644
static bool virt_get_secure(Object *obj, Error **errp)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
@@ -1992,6 +2036,7 @@ static void virt_set_virt(Object *obj, bool value, Error **errp)
@@ -2007,6 +2051,7 @@ static void virt_set_virt(Object *obj, bool value, Error **errp)
vms->virt = value;
}
@ -129,7 +132,25 @@ index e30b837135..5a45677205 100644
static bool virt_get_highmem(Object *obj, Error **errp)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
@@ -2367,6 +2412,7 @@ static int virt_kvm_type(MachineState *ms, const char *type_str)
@@ -2073,7 +2118,7 @@ static void virt_set_ras(Object *obj, bool value, Error **errp)
vms->ras = value;
}
-
+#if 0 /* Disabled for Red Hat Enterprise Linux */
static bool virt_get_mte(Object *obj, Error **errp)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
@@ -2087,7 +2132,7 @@ static void virt_set_mte(Object *obj, bool value, Error **errp)
vms->mte = value;
}
-
+#endif
static char *virt_get_gic_version(Object *obj, Error **errp)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
@@ -2401,6 +2446,7 @@ static int virt_kvm_type(MachineState *ms, const char *type_str)
return requested_pa_size > 40 ? requested_pa_size : 0;
}
@ -137,7 +158,7 @@ index e30b837135..5a45677205 100644
static void virt_machine_class_init(ObjectClass *oc, void *data)
{
MachineClass *mc = MACHINE_CLASS(oc);
@@ -2637,3 +2683,127 @@ static void virt_machine_2_6_options(MachineClass *mc)
@@ -2679,3 +2725,131 @@ static void virt_machine_2_6_options(MachineClass *mc)
vmc->no_pmu = true;
}
DEFINE_VIRT_MACHINE(2, 6)
@ -256,6 +277,10 @@ index e30b837135..5a45677205 100644
+ object_property_set_description(obj, "ras",
+ "Set on/off to enable/disable reporting host memory errors "
+ "to a KVM guest using ACPI and guest external abort exceptions");
+
+ /* MTE is disabled by default. */
+ vms->mte = false;
+
+ vms->irqmap=a15irqmap;
+ virt_flash_create(vms);
+}
@ -266,10 +291,10 @@ index e30b837135..5a45677205 100644
+}
+DEFINE_RHEL_MACHINE_AS_LATEST(8, 2, 0)
diff --git a/include/hw/arm/virt.h b/include/hw/arm/virt.h
index 54bcf17afd..5fdabd87d6 100644
index dff67e1bef..7c1e085749 100644
--- a/include/hw/arm/virt.h
+++ b/include/hw/arm/virt.h
@@ -165,6 +165,7 @@ typedef struct {
@@ -166,6 +166,7 @@ typedef struct {
#define VIRT_ECAM_ID(high) (high ? VIRT_HIGH_PCIE_ECAM : VIRT_PCIE_ECAM)
@ -277,7 +302,7 @@ index 54bcf17afd..5fdabd87d6 100644
#define TYPE_VIRT_MACHINE MACHINE_TYPE_NAME("virt")
#define VIRT_MACHINE(obj) \
OBJECT_CHECK(VirtMachineState, (obj), TYPE_VIRT_MACHINE)
@@ -173,6 +174,16 @@ typedef struct {
@@ -174,6 +175,16 @@ typedef struct {
#define VIRT_MACHINE_CLASS(klass) \
OBJECT_CLASS_CHECK(VirtMachineClass, klass, TYPE_VIRT_MACHINE)

View File

@ -1,4 +1,4 @@
From 59c55f3104aa650b5b2a31150a34646cc7018b77 Mon Sep 17 00:00:00 2001
From da49e223e70695ec4ecc5668658d836346e7f29c Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Fri, 19 Oct 2018 13:27:13 +0200
Subject: Add ppc64 machine types
@ -44,10 +44,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
5 files changed, 307 insertions(+), 1 deletion(-)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index f6f034d039..f30618e4b1 100644
index 0ae293ec94..756c8667c1 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -4530,6 +4530,7 @@ static void spapr_machine_class_init(ObjectClass *oc, void *data)
@@ -4529,6 +4529,7 @@ static void spapr_machine_class_init(ObjectClass *oc, void *data)
smc->smp_threads_vsmt = true;
smc->nr_xirqs = SPAPR_NR_XIRQS;
xfc->match_nvt = spapr_match_nvt;
@ -55,7 +55,7 @@ index f6f034d039..f30618e4b1 100644
}
static const TypeInfo spapr_machine_info = {
@@ -4580,6 +4581,7 @@ static void spapr_machine_latest_class_options(MachineClass *mc)
@@ -4579,6 +4580,7 @@ static void spapr_machine_latest_class_options(MachineClass *mc)
} \
type_init(spapr_machine_register_##suffix)
@ -63,7 +63,7 @@ index f6f034d039..f30618e4b1 100644
/*
* pseries-5.1
*/
@@ -4638,6 +4640,7 @@ static void spapr_machine_4_1_class_options(MachineClass *mc)
@@ -4644,6 +4646,7 @@ static void spapr_machine_4_1_class_options(MachineClass *mc)
}
DEFINE_SPAPR_MACHINE(4_1, "4.1", false);
@ -71,7 +71,7 @@ index f6f034d039..f30618e4b1 100644
/*
* pseries-4.0
@@ -4654,6 +4657,7 @@ static void phb_placement_4_0(SpaprMachineState *spapr, uint32_t index,
@@ -4660,6 +4663,7 @@ static void phb_placement_4_0(SpaprMachineState *spapr, uint32_t index,
*nv2atsd = 0;
}
@ -79,7 +79,7 @@ index f6f034d039..f30618e4b1 100644
static void spapr_machine_4_0_class_options(MachineClass *mc)
{
SpaprMachineClass *smc = SPAPR_MACHINE_CLASS(mc);
@@ -4813,6 +4817,7 @@ DEFINE_SPAPR_MACHINE(2_8, "2.8", false);
@@ -4819,6 +4823,7 @@ DEFINE_SPAPR_MACHINE(2_8, "2.8", false);
/*
* pseries-2.7
*/
@ -87,7 +87,7 @@ index f6f034d039..f30618e4b1 100644
static void phb_placement_2_7(SpaprMachineState *spapr, uint32_t index,
uint64_t *buid, hwaddr *pio,
@@ -4867,6 +4872,7 @@ static void phb_placement_2_7(SpaprMachineState *spapr, uint32_t index,
@@ -4873,6 +4878,7 @@ static void phb_placement_2_7(SpaprMachineState *spapr, uint32_t index,
*nv2atsd = 0;
}
@ -95,7 +95,7 @@ index f6f034d039..f30618e4b1 100644
static void spapr_machine_2_7_class_options(MachineClass *mc)
{
SpaprMachineClass *smc = SPAPR_MACHINE_CLASS(mc);
@@ -4981,6 +4987,280 @@ static void spapr_machine_2_1_class_options(MachineClass *mc)
@@ -4987,6 +4993,280 @@ static void spapr_machine_2_1_class_options(MachineClass *mc)
compat_props_add(mc->compat_props, hw_compat_2_1, hw_compat_2_1_len);
}
DEFINE_SPAPR_MACHINE(2_1, "2.1", false);
@ -377,7 +377,7 @@ index f6f034d039..f30618e4b1 100644
static void spapr_machine_register_types(void)
{
diff --git a/hw/ppc/spapr_cpu_core.c b/hw/ppc/spapr_cpu_core.c
index bfdf6b3e5c..39fcaf855b 100644
index 6a2239d5e5..f228f8bb75 100644
--- a/hw/ppc/spapr_cpu_core.c
+++ b/hw/ppc/spapr_cpu_core.c
@@ -24,6 +24,7 @@
@ -394,9 +394,9 @@ index bfdf6b3e5c..39fcaf855b 100644
Error *local_err = NULL;
+ SpaprMachineClass *smc = SPAPR_MACHINE_GET_CLASS(spapr);
qdev_realize(DEVICE(cpu), NULL, &local_err);
if (local_err) {
@@ -250,6 +252,17 @@ static void spapr_realize_vcpu(PowerPCCPU *cpu, SpaprMachineState *spapr,
if (!qdev_realize(DEVICE(cpu), NULL, errp)) {
return;
@@ -249,6 +251,17 @@ static void spapr_realize_vcpu(PowerPCCPU *cpu, SpaprMachineState *spapr,
cpu_ppc_set_vhyp(cpu, PPC_VIRTUAL_HYPERVISOR(spapr));
kvmppc_set_papr(cpu);
@ -412,22 +412,22 @@ index bfdf6b3e5c..39fcaf855b 100644
+ }
+
if (spapr_irq_cpu_intc_create(spapr, cpu, &local_err) < 0) {
goto error_intc_create;
}
cpu_remove_sync(CPU(cpu));
return;
diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h
index c421410e3f..5190d6a936 100644
index 3134d339e8..f48089edba 100644
--- a/include/hw/ppc/spapr.h
+++ b/include/hw/ppc/spapr.h
@@ -130,6 +130,7 @@ struct SpaprMachineClass {
bool smp_threads_vsmt; /* set VSMT to smp_threads by default */
@@ -131,6 +131,7 @@ struct SpaprMachineClass {
hwaddr rma_limit; /* clamp the RMA to this size */
bool pre_5_1_assoc_refpoints;
+ bool has_power9_support;
void (*phb_placement)(SpaprMachineState *spapr, uint32_t index,
uint64_t *buid, hwaddr *pio,
hwaddr *mmio32, hwaddr *mmio64,
diff --git a/target/ppc/compat.c b/target/ppc/compat.c
index fda0dfe8f8..ab8e3b2125 100644
index 08aede88dc..b193445aca 100644
--- a/target/ppc/compat.c
+++ b/target/ppc/compat.c
@@ -114,8 +114,19 @@ static const CompatInfo *compat_by_pvr(uint32_t pvr)

View File

@ -1,4 +1,4 @@
From 92594368e1369e85d1b87dd1a65408a4f594cf09 Mon Sep 17 00:00:00 2001
From dc0914b5e43a9925217af8ddde44194176822108 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Fri, 19 Oct 2018 13:47:32 +0200
Subject: Add s390x machine types
@ -27,10 +27,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
1 file changed, 70 insertions(+), 1 deletion(-)
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 023fd25f2b..0e8dd62b18 100644
index e72c61d2ea..a6a37cce94 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -778,7 +778,7 @@ bool css_migration_enabled(void)
@@ -777,7 +777,7 @@ bool css_migration_enabled(void)
{ \
MachineClass *mc = MACHINE_CLASS(oc); \
ccw_machine_##suffix##_class_options(mc); \
@ -39,7 +39,7 @@ index 023fd25f2b..0e8dd62b18 100644
if (latest) { \
mc->alias = "s390-ccw-virtio"; \
mc->is_default = true; \
@@ -802,6 +802,7 @@ bool css_migration_enabled(void)
@@ -801,6 +801,7 @@ bool css_migration_enabled(void)
} \
type_init(ccw_machine_register_##suffix)
@ -47,7 +47,7 @@ index 023fd25f2b..0e8dd62b18 100644
static void ccw_machine_5_1_instance_options(MachineState *machine)
{
}
@@ -1054,6 +1055,74 @@ static void ccw_machine_2_4_class_options(MachineClass *mc)
@@ -1053,6 +1054,74 @@ static void ccw_machine_2_4_class_options(MachineClass *mc)
compat_props_add(mc->compat_props, compat, G_N_ELEMENTS(compat));
}
DEFINE_CCW_MACHINE(2_4, "2.4", false);

View File

@ -1,4 +1,4 @@
From 31a74446c5312b248bbc6093f21aee3500b96fca Mon Sep 17 00:00:00 2001
From 45d5ef7594e5b07d3a975feea8e72541402a797f Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Fri, 19 Oct 2018 13:10:31 +0200
Subject: Add x86_64 machine types
@ -70,10 +70,10 @@ index b7bcbbbb2a..fe815c5403 100644
}
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 61acc9e530..fe37bdec7a 100644
index 47c5ca3e34..063f01d19a 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -346,6 +346,263 @@ GlobalProperty pc_compat_1_4[] = {
@@ -347,6 +347,263 @@ GlobalProperty pc_compat_1_4[] = {
};
const size_t pc_compat_1_4_len = G_N_ELEMENTS(pc_compat_1_4);
@ -337,7 +337,7 @@ index 61acc9e530..fe37bdec7a 100644
GSIState *pc_gsi_create(qemu_irq **irqs, bool pci_enabled)
{
GSIState *s;
@@ -1011,7 +1268,8 @@ void pc_memory_init(PCMachineState *pcms,
@@ -1012,7 +1269,8 @@ void pc_memory_init(PCMachineState *pcms,
option_rom_mr = g_malloc(sizeof(*option_rom_mr));
memory_region_init_ram(option_rom_mr, NULL, "pc.rom", PC_ROM_SIZE,
&error_fatal);
@ -347,7 +347,7 @@ index 61acc9e530..fe37bdec7a 100644
memory_region_set_readonly(option_rom_mr, true);
}
memory_region_add_subregion_overlap(rom_memory,
@@ -1969,6 +2227,8 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
@@ -1956,6 +2214,8 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
pcmc->linuxboot_dma_enabled = true;
pcmc->pvh_enabled = true;
assert(!mc->get_hotplug_handler);
@ -356,7 +356,7 @@ index 61acc9e530..fe37bdec7a 100644
mc->get_hotplug_handler = pc_get_hotplug_handler;
mc->hotplug_allowed = pc_hotplug_allowed;
mc->cpu_index_to_instance_props = x86_cpu_index_to_props;
@@ -1981,7 +2241,8 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
@@ -1968,7 +2228,8 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
mc->hot_add_cpu = pc_hot_add_cpu;
mc->smp_parse = pc_smp_parse;
mc->block_default_type = IF_IDE;
@ -367,7 +367,7 @@ index 61acc9e530..fe37bdec7a 100644
mc->wakeup = pc_machine_wakeup;
hc->pre_plug = pc_machine_device_pre_plug_cb;
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 18815e8302..eeadd896c2 100644
index 0ecdd57689..6d935645b6 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -54,6 +54,7 @@
@ -389,7 +389,7 @@ index 18815e8302..eeadd896c2 100644
pcmc->smbios_uuid_encoded,
pcmc->smbios_stream_product,
pcmc->smbios_stream_version,
@@ -314,6 +315,7 @@ static void pc_init1(MachineState *machine,
@@ -316,6 +317,7 @@ static void pc_init1(MachineState *machine,
* hw_compat_*, pc_compat_*, or * pc_*_machine_options().
*/
@ -397,7 +397,7 @@ index 18815e8302..eeadd896c2 100644
static void pc_compat_2_3_fn(MachineState *machine)
{
X86MachineState *x86ms = X86_MACHINE(machine);
@@ -992,3 +994,207 @@ static void xenfv_3_1_machine_options(MachineClass *m)
@@ -994,3 +996,207 @@ static void xenfv_3_1_machine_options(MachineClass *m)
DEFINE_PC_MACHINE(xenfv, "xenfv-3.1", pc_xen_hvm_init,
xenfv_3_1_machine_options);
#endif
@ -606,7 +606,7 @@ index 18815e8302..eeadd896c2 100644
+DEFINE_PC_MACHINE(rhel700, "pc-i440fx-rhel7.0.0", pc_init_rhel700,
+ pc_machine_rhel700_options);
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index a1131e6825..1cd4e15297 100644
index b8ea764ce3..f4edb049d6 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -201,8 +201,8 @@ static void pc_q35_init(MachineState *machine)
@ -620,7 +620,7 @@ index a1131e6825..1cd4e15297 100644
pcmc->smbios_uuid_encoded,
pcmc->smbios_stream_product,
pcmc->smbios_stream_version,
@@ -337,6 +337,7 @@ static void pc_q35_init(MachineState *machine)
@@ -336,6 +336,7 @@ static void pc_q35_init(MachineState *machine)
DEFINE_PC_MACHINE(suffix, name, pc_init_##suffix, optionfn)
@ -628,7 +628,7 @@ index a1131e6825..1cd4e15297 100644
static void pc_q35_machine_options(MachineClass *m)
{
PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
@@ -565,3 +566,160 @@ static void pc_q35_2_4_machine_options(MachineClass *m)
@@ -564,3 +565,160 @@ static void pc_q35_2_4_machine_options(MachineClass *m)
DEFINE_Q35_MACHINE(v2_4, "pc-q35-2.4", NULL,
pc_q35_2_4_machine_options);
@ -803,10 +803,10 @@ index 1062df96c0..c3577319c0 100644
int nb_nodes, ram_addr_t size);
bool ignore_boot_device_suffixes;
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 665c4309a2..95d07f81a0 100644
index 951e825778..156be22995 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -120,6 +120,9 @@ typedef struct PCMachineClass {
@@ -121,6 +121,9 @@ typedef struct PCMachineClass {
/* use PVH to load kernels that support this feature */
bool pvh_enabled;
@ -816,7 +816,7 @@ index 665c4309a2..95d07f81a0 100644
} PCMachineClass;
#define TYPE_PC_MACHINE "generic-pc-machine"
@@ -264,6 +267,36 @@ extern const size_t pc_compat_1_5_len;
@@ -265,6 +268,36 @@ extern const size_t pc_compat_1_5_len;
extern GlobalProperty pc_compat_1_4[];
extern const size_t pc_compat_1_4_len;
@ -854,7 +854,7 @@ index 665c4309a2..95d07f81a0 100644
* depending on QEMU versions up to QEMU 2.4.
*/
diff --git a/target/i386/cpu.c b/target/i386/cpu.c
index 55a30cd4d9..5477433af5 100644
index 030a5a09ed..cdaa1463f2 100644
--- a/target/i386/cpu.c
+++ b/target/i386/cpu.c
@@ -1830,7 +1830,7 @@ static X86CPUDefinition builtin_x86_defs[] = {
@ -864,9 +864,9 @@ index 55a30cd4d9..5477433af5 100644
- .model = 6,
+ .model = 13,
.stepping = 3,
.features[FEAT_1_EDX] = CPUID_SSE2 | CPUID_SSE | CPUID_FXSR |
CPUID_MMX | CPUID_CLFLUSH | CPUID_PSE36 | CPUID_PAT | CPUID_CMOV |
@@ -4114,6 +4114,7 @@ static PropValue kvm_default_props[] = {
.features[FEAT_1_EDX] =
PPRO_FEATURES |
@@ -4142,6 +4142,7 @@ static PropValue kvm_default_props[] = {
{ "acpi", "off" },
{ "monitor", "off" },
{ "svm", "off" },
@ -875,10 +875,10 @@ index 55a30cd4d9..5477433af5 100644
};
diff --git a/target/i386/kvm.c b/target/i386/kvm.c
index 6adbff3d74..51fbfd528e 100644
index 6f18d940a5..98249b2e3b 100644
--- a/target/i386/kvm.c
+++ b/target/i386/kvm.c
@@ -3139,6 +3139,7 @@ static int kvm_get_msrs(X86CPU *cpu)
@@ -3135,6 +3135,7 @@ static int kvm_get_msrs(X86CPU *cpu)
struct kvm_msr_entry *msrs = cpu->kvm_msr_buf->entries;
int ret, i;
uint64_t mtrr_top_bits;
@ -886,7 +886,7 @@ index 6adbff3d74..51fbfd528e 100644
kvm_msr_buf_reset(cpu);
@@ -3448,6 +3449,9 @@ static int kvm_get_msrs(X86CPU *cpu)
@@ -3444,6 +3445,9 @@ static int kvm_get_msrs(X86CPU *cpu)
break;
case MSR_KVM_ASYNC_PF_EN:
env->async_pf_en_msr = msrs[i].data;

View File

@ -1,4 +1,4 @@
From 93f9f7beccd34102c5c8e25c3b2b3888c61aa063 Mon Sep 17 00:00:00 2001
From 69de445124e71df949a3d5289f8a10a5f771bac2 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Fri, 19 Oct 2018 13:48:41 +0200
Subject: Enable make check
@ -28,6 +28,9 @@ Rebase changes (weekly-200129):
Rebased changes (weekly-200212):
- Do not run iotests on make checka
Rebase changes (5.1.0-rc1):
- Enabled iotests 071 and 099
Merged patches (4.0.0):
- f7ffd13 Remove 7 qcow2 and luks iotests that are taking > 25 sec to run during the fast train build proce
@ -38,7 +41,6 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
redhat/qemu-kvm.spec.template | 2 +-
tests/qemu-iotests/051 | 12 ++++++------
tests/qemu-iotests/group | 4 ++--
tests/qtest/Makefile.include | 12 ++++++------
tests/qtest/boot-serial-test.c | 6 +++++-
tests/qtest/cpu-plug-test.c | 4 ++--
@ -47,10 +49,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
tests/qtest/prom-env-test.c | 4 ++++
tests/qtest/test-x86-cpuid-compat.c | 2 ++
tests/qtest/usb-hcd-xhci-test.c | 4 ++++
11 files changed, 38 insertions(+), 18 deletions(-)
10 files changed, 36 insertions(+), 16 deletions(-)
diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051
index 034d3a3250..aadc413ee6 100755
index bee26075b2..61d25c4ed7 100755
--- a/tests/qemu-iotests/051
+++ b/tests/qemu-iotests/051
@@ -183,11 +183,11 @@ run_qemu -drive if=virtio
@ -83,30 +85,8 @@ index 034d3a3250..aadc413ee6 100755
;;
*)
;;
diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group
index 9b07a7ed03..c678d915b2 100644
--- a/tests/qemu-iotests/group
+++ b/tests/qemu-iotests/group
@@ -92,7 +92,7 @@
068 rw quick
069 rw auto quick
070 rw quick
-071 rw auto quick
+# 071 rw auto quick -- requires whitelisted blkverify
072 rw auto quick
073 rw auto quick
074 rw auto quick
@@ -120,7 +120,7 @@
096 rw quick
097 rw auto backing
098 rw auto backing quick
-099 rw auto quick
+# 099 rw auto quick -- requires whitelisted blkverify
# 100 was removed, do not reuse
101 rw quick
102 rw quick
diff --git a/tests/qtest/Makefile.include b/tests/qtest/Makefile.include
index 98af2c2d93..d370459c3a 100644
index b0204e44f2..cf8a138791 100644
--- a/tests/qtest/Makefile.include
+++ b/tests/qtest/Makefile.include
@@ -29,7 +29,7 @@ check-qtest-i386-y += ide-test
@ -127,7 +107,7 @@ index 98af2c2d93..d370459c3a 100644
check-qtest-i386-y += vmgenid-test
check-qtest-i386-$(CONFIG_TPM_CRB) += tpm-crb-swtpm-test
check-qtest-i386-$(CONFIG_TPM_CRB) += tpm-crb-test
@@ -88,7 +88,7 @@ check-qtest-mips64el-$(CONFIG_VGA) += display-vga-test
@@ -90,7 +90,7 @@ check-qtest-mips64el-$(CONFIG_VGA) += display-vga-test
check-qtest-moxie-y += boot-serial-test
check-qtest-ppc-$(CONFIG_ISA_TESTDEV) = endianness-test
@ -136,7 +116,7 @@ index 98af2c2d93..d370459c3a 100644
check-qtest-ppc-y += prom-env-test
check-qtest-ppc-y += drive_del-test
check-qtest-ppc-y += boot-serial-test
@@ -102,8 +102,8 @@ check-qtest-ppc64-$(CONFIG_PSERIES) += rtas-test
@@ -104,8 +104,8 @@ check-qtest-ppc64-$(CONFIG_PSERIES) += rtas-test
check-qtest-ppc64-$(CONFIG_SLIRP) += pxe-test
check-qtest-ppc64-$(CONFIG_USB_UHCI) += usb-hcd-uhci-test
check-qtest-ppc64-$(CONFIG_USB_XHCI_NEC) += usb-hcd-xhci-test
@ -147,7 +127,7 @@ index 98af2c2d93..d370459c3a 100644
check-qtest-ppc64-$(CONFIG_RTL8139_PCI) += test-filter-redirector
check-qtest-ppc64-$(CONFIG_VGA) += display-vga-test
check-qtest-ppc64-y += numa-test
@@ -152,7 +152,7 @@ check-qtest-s390x-$(CONFIG_SLIRP) += test-netfilter
@@ -154,7 +154,7 @@ check-qtest-s390x-$(CONFIG_SLIRP) += test-netfilter
check-qtest-s390x-$(CONFIG_POSIX) += test-filter-mirror
check-qtest-s390x-$(CONFIG_POSIX) += test-filter-redirector
check-qtest-s390x-y += drive_del-test
@ -157,10 +137,10 @@ index 98af2c2d93..d370459c3a 100644
check-qtest-s390x-y += cpu-plug-test
check-qtest-s390x-y += migration-test
diff --git a/tests/qtest/boot-serial-test.c b/tests/qtest/boot-serial-test.c
index 85a3614286..1c18441334 100644
index bfe7624dc6..1ffaa0bd7e 100644
--- a/tests/qtest/boot-serial-test.c
+++ b/tests/qtest/boot-serial-test.c
@@ -109,19 +109,23 @@ static testdef_t tests[] = {
@@ -120,19 +120,23 @@ static testdef_t tests[] = {
{ "ppc", "g3beige", "", "PowerPC,750" },
{ "ppc", "mac99", "", "PowerPC,G4" },
{ "ppc", "sam460ex", "-m 256", "DRAM: 256 MiB" },

View File

@ -1,4 +1,4 @@
From ac9ff21203ff07854c232464d96e1f35741af8a6 Mon Sep 17 00:00:00 2001
From 08d751996b6c983d037134551f1c4b4691989168 Mon Sep 17 00:00:00 2001
From: Bandan Das <bsd@redhat.com>
Date: Tue, 3 Dec 2013 20:05:13 +0100
Subject: vfio: cap number of devices that can be assigned
@ -42,7 +42,7 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
2 files changed, 29 insertions(+), 1 deletion(-)
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
index d020ea9f82..e4292ea2b4 100644
index 2e561c06d6..be1b843e7f 100644
--- a/hw/vfio/pci.c
+++ b/hw/vfio/pci.c
@@ -47,6 +47,9 @@
@ -55,7 +55,7 @@ index d020ea9f82..e4292ea2b4 100644
static void vfio_disable_interrupts(VFIOPCIDevice *vdev);
static void vfio_mmap_set_enabled(VFIOPCIDevice *vdev, bool enabled);
@@ -2715,9 +2718,30 @@ static void vfio_realize(PCIDevice *pdev, Error **errp)
@@ -2712,9 +2715,30 @@ static void vfio_realize(PCIDevice *pdev, Error **errp)
ssize_t len;
struct stat st;
int groupid;
@ -87,7 +87,7 @@ index d020ea9f82..e4292ea2b4 100644
if (!vdev->vbasedev.sysfsdev) {
if (!(~vdev->host.domain || ~vdev->host.bus ||
~vdev->host.slot || ~vdev->host.function)) {
@@ -3162,6 +3186,9 @@ static Property vfio_pci_dev_properties[] = {
@@ -3158,6 +3182,9 @@ static Property vfio_pci_dev_properties[] = {
DEFINE_PROP_BOOL("x-no-kvm-msix", VFIOPCIDevice, no_kvm_msix, false),
DEFINE_PROP_BOOL("x-no-geforce-quirks", VFIOPCIDevice,
no_geforce_quirks, false),

View File

@ -1,4 +1,4 @@
From 0f0f3ab53bc61fbf66e546ab6bd22d1a60102b79 Mon Sep 17 00:00:00 2001
From 5ee503bc80a271f9b0fcf3d24df42ee3f8c7d687 Mon Sep 17 00:00:00 2001
From: Eduardo Habkost <ehabkost@redhat.com>
Date: Wed, 4 Dec 2013 18:53:17 +0100
Subject: Add support statement to -help output
@ -24,10 +24,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
1 file changed, 9 insertions(+)
diff --git a/softmmu/vl.c b/softmmu/vl.c
index 6509057752..8453de5e68 100644
index a1fb06dca0..3c383911cd 100644
--- a/softmmu/vl.c
+++ b/softmmu/vl.c
@@ -1674,9 +1674,17 @@ static void version(void)
@@ -1686,9 +1686,17 @@ static void version(void)
QEMU_COPYRIGHT "\n");
}
@ -45,7 +45,7 @@ index 6509057752..8453de5e68 100644
printf("usage: %s [options] [disk_image]\n\n"
"'disk_image' is a raw hard disk image for IDE hard disk 0\n\n",
error_get_progname());
@@ -1693,6 +1701,7 @@ static void help(int exitcode)
@@ -1705,6 +1713,7 @@ static void help(int exitcode)
"\n"
QEMU_HELP_BOTTOM "\n");

View File

@ -1,4 +1,4 @@
From 47faf13d999995693d505074ee73d4908356888b Mon Sep 17 00:00:00 2001
From edf9e38a2ef58908f45e37a63746926a494f9057 Mon Sep 17 00:00:00 2001
From: Andrew Jones <drjones@redhat.com>
Date: Tue, 21 Jan 2014 10:46:52 +0100
Subject: globally limit the maximum number of CPUs
@ -82,7 +82,7 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
2 files changed, 30 insertions(+)
diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
index ab36fbfa0c..6f6bb47d9a 100644
index 63ef6af9a1..db9a6b38b1 100644
--- a/accel/kvm/kvm-all.c
+++ b/accel/kvm/kvm-all.c
@@ -2088,6 +2088,18 @@ static int kvm_init(MachineState *ms)
@ -105,7 +105,7 @@ index ab36fbfa0c..6f6bb47d9a 100644
if (nc->num > soft_vcpus_limit) {
warn_report("Number of %s cpus requested (%d) exceeds "
diff --git a/softmmu/vl.c b/softmmu/vl.c
index 8453de5e68..ea6e9e4f01 100644
index 3c383911cd..62fc7c898f 100644
--- a/softmmu/vl.c
+++ b/softmmu/vl.c
@@ -116,6 +116,8 @@
@ -117,7 +117,7 @@ index 8453de5e68..ea6e9e4f01 100644
static const char *data_dir[16];
static int data_dir_idx;
const char *bios_name = NULL;
@@ -1177,6 +1179,20 @@ static MachineClass *find_default_machine(GSList *machines)
@@ -1189,6 +1191,20 @@ static MachineClass *find_default_machine(GSList *machines)
return default_machineclass;
}
@ -138,7 +138,7 @@ index 8453de5e68..ea6e9e4f01 100644
static int machine_help_func(QemuOpts *opts, MachineState *machine)
{
ObjectProperty *prop;
@@ -3831,6 +3847,8 @@ void qemu_init(int argc, char **argv, char **envp)
@@ -3845,6 +3861,8 @@ void qemu_init(int argc, char **argv, char **envp)
"mutually exclusive");
exit(EXIT_FAILURE);
}

View File

@ -1,4 +1,4 @@
From bc118b0038083bcd54a970ed0a6c92f9d55759e2 Mon Sep 17 00:00:00 2001
From 9238ce7ba819979c2df2caa49c5db3185376fedd Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Thu, 8 Oct 2015 09:50:17 +0200
Subject: Add support for simpletrace
@ -39,10 +39,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
create mode 100644 scripts/systemtap/script.d/qemu_kvm.stp
diff --git a/Makefile b/Makefile
index 88b7565246..045eeb545e 100644
index 42e854b2b1..3b9ff25f10 100644
--- a/Makefile
+++ b/Makefile
@@ -995,6 +995,10 @@ endif
@@ -996,6 +996,10 @@ endif
$(INSTALL_DATA) $(SRC_PATH)/pc-bios/keymaps/$$x "$(DESTDIR)$(qemu_datadir)/keymaps"; \
done
$(INSTALL_DATA) $(BUILD_DIR)/trace-events-all "$(DESTDIR)$(qemu_datadir)/trace-events-all"

View File

@ -1,4 +1,4 @@
From cc88b2746e9e8cfa6816e871ca282cddb07a0146 Mon Sep 17 00:00:00 2001
From 44c255eddd3096d63ebdc055181d3fcebe202eef Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Wed, 8 Jul 2020 08:35:50 +0200
Subject: Use qemu-kvm in documentation instead of qemu-system-<arch>
@ -142,10 +142,10 @@ index 824e713491..8449936c63 100644
-device vhost-user-fs-pci,chardev=char0,tag=myfs \
-object memory-backend-memfd,id=mem,size=4G,share=on \
diff --git a/qemu-options.hx b/qemu-options.hx
index b9699440a3..fe85a0e952 100644
index 1700205035..697276859b 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -2891,11 +2891,11 @@ SRST
@@ -2900,11 +2900,11 @@ SRST
::

View File

@ -1,4 +1,4 @@
From 1cd3f04262da39a69509435c1db96c0c2a8ebd62 Mon Sep 17 00:00:00 2001
From 5bb61f2b69d9880dea36d604719ee7bd4cf74ba6 Mon Sep 17 00:00:00 2001
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Date: Fri, 5 May 2017 19:06:14 +0200
Subject: usb-xhci: Fix PCI capability order
@ -62,7 +62,7 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
index b25cce8f0c..9582d81d14 100644
index 38bdfaf3fd..4acd7842ac 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -3413,6 +3413,12 @@ static void usb_xhci_realize(struct PCIDevice *dev, Error **errp)

View File

@ -1,4 +1,4 @@
From 766fb0162dea8353a39f6eeff5ba90309cb0338e Mon Sep 17 00:00:00 2001
From 63a330ad8eeb2025c12d56714cb1271196f80dbe Mon Sep 17 00:00:00 2001
From: Fam Zheng <famz@redhat.com>
Date: Wed, 14 Jun 2017 15:37:01 +0200
Subject: virtio-scsi: Reject scsi-cd if data plane enabled [RHEL only]

View File

@ -1,4 +1,4 @@
From ff6425248e516c678db5bb85d59b5811c48bedaf Mon Sep 17 00:00:00 2001
From 9ff2cc74cd1f41abc4b379fbaaaaa03a30415494 Mon Sep 17 00:00:00 2001
From: David Gibson <dgibson@redhat.com>
Date: Wed, 6 Feb 2019 03:58:56 +0000
Subject: BZ1653590: Require at least 64kiB pages for downstream guests & hosts
@ -32,10 +32,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
1 file changed, 7 insertions(+)
diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c
index 0c2bc8e06e..15bef3d27f 100644
index 3225fc5a2e..08ae7724d5 100644
--- a/hw/ppc/spapr_caps.c
+++ b/hw/ppc/spapr_caps.c
@@ -335,12 +335,19 @@ void spapr_check_pagesize(SpaprMachineState *spapr, hwaddr pagesize,
@@ -326,12 +326,19 @@ void spapr_check_pagesize(SpaprMachineState *spapr, hwaddr pagesize,
static void cap_hpt_maxpagesize_apply(SpaprMachineState *spapr,
uint8_t val, Error **errp)
{

View File

@ -1,4 +1,4 @@
From 2ce0d065e712fdfae74a52cfa5188791eaa7f848 Mon Sep 17 00:00:00 2001
From e27f3d72ac38e37758d4ea5b84bccf03cab8219a Mon Sep 17 00:00:00 2001
From: Kevin Wolf <kwolf@redhat.com>
Date: Fri, 13 Mar 2020 12:34:32 +0000
Subject: block: Versioned x-blockdev-reopen API with feature flag
@ -29,10 +29,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/qapi/block-core.json b/qapi/block-core.json
index b20332e592..db4544df75 100644
index 197bdc1c36..efc0f6a377 100644
--- a/qapi/block-core.json
+++ b/qapi/block-core.json
@@ -4135,10 +4135,17 @@
@@ -4118,10 +4118,17 @@
# image does not have a default backing file name as part of its
# metadata.
#

View File

@ -1,6 +1,6 @@
From 64afb1a8b06f0017b3ee5eb59790e1751424b1d5 Mon Sep 17 00:00:00 2001
From f70eb50b7107ee4e18cec3561bbdde1cbd0a0bdb Mon Sep 17 00:00:00 2001
From: David Gibson <dgibson@redhat.com>
Date: Fri, 22 May 2020 02:27:18 +0000
Date: Mon, 27 Jul 2020 13:29:01 +0200
Subject: RHEL-only: Enable vTPM for POWER in downstream configs
RH-Author: David Gibson <dgibson@redhat.com>
@ -23,6 +23,7 @@ Brew: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=28742072
Testing: With brewed qemu was able to see a vTPM device in a guest
Signed-off-by: David Gibson <dgibson@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
default-configs/ppc64-rh-devices.mak | 3 +++

View File

@ -1,52 +0,0 @@
From 0e4d9f0332efd8417831815a414a5131f85e0a85 Mon Sep 17 00:00:00 2001
From: Juan Quintela <quintela@redhat.com>
Date: Fri, 3 Jul 2020 12:37:05 -0400
Subject: virtio-net: fix removal of failover device
RH-Author: Juan Quintela <quintela@redhat.com>
Message-id: <20200703123705.7175-2-quintela@redhat.com>
Patchwork-id: 97901
O-Subject: [RHEL-AV-8.2.1 qemu-kvm PATCH 1/1] virtio-net: fix removal of failover device
Bugzilla: 1820120
RH-Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
RH-Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
If you have a networking device and its virtio failover device, and
you remove them in this order:
- virtio device
- the real device
You get qemu crash.
See bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1820120
Bug exist on qemu 4.2 and 5.0.
But in 5.0 don't shows because commit
77b06bba62034a87cc61a9c8de1309ae3e527d97
somehow papers over it.
CC: Jason Wang <jasowang@redhat.com>
CC: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/net/virtio-net.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
index 1596cb1397..f82455ba5d 100644
--- a/hw/net/virtio-net.c
+++ b/hw/net/virtio-net.c
@@ -3417,6 +3417,7 @@ static void virtio_net_device_unrealize(DeviceState *dev)
g_free(n->vlans);
if (n->failover) {
+ device_listener_unregister(&n->primary_listener);
g_free(n->primary_device_id);
g_free(n->standby_id);
qobject_unref(n->primary_device_dict);
--
2.27.0

View File

@ -1,6 +1,6 @@
From def5545e3588c8b8c7cd12e3ff8967ce059d3f38 Mon Sep 17 00:00:00 2001
From 69d8ae7ad5314e465c24fdeb1317751fa3e50ceb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
Date: Mon, 8 Jun 2020 15:54:26 -0400
Date: Mon, 27 Jul 2020 13:29:01 +0200
Subject: redhat: fix 5.0 rebase missing ISA TPM TIS
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@ -20,7 +20,8 @@ BRANCH: rhel-av-8.3.0-preview-2020-04-29
UPSTREAM: N/A
BREW: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=29172313
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
default-configs/x86_64-rh-devices.mak | 2 +-

View File

@ -1,6 +1,6 @@
From f8f3c2d598ca5921b6a5d477e848f02977c715fd Mon Sep 17 00:00:00 2001
From 83486421151111ec118cc703819bd4764fea677e Mon Sep 17 00:00:00 2001
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Date: Fri, 19 Jun 2020 15:42:26 -0400
Date: Mon, 27 Jul 2020 13:29:01 +0200
Subject: redhat: define hw_compat_8_2
RH-Author: Dr. David Alan Gilbert <dgilbert@redhat.com>
@ -17,6 +17,8 @@ From: Laurent Vivier <lvivier@redhat.com>
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
For minor fix
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/core/machine.c | 28 ++++++++++++++++++++++++++++
@ -24,7 +26,7 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
2 files changed, 31 insertions(+)
diff --git a/hw/core/machine.c b/hw/core/machine.c
index ef6b320ea7..b8373991e9 100644
index 2b8e480040..5476af98e1 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -28,6 +28,34 @@

View File

@ -1,6 +1,6 @@
From 8b509ce5c11a82d05ad0d43270e4b76e0010015b Mon Sep 17 00:00:00 2001
From b02c9f5373f6ffa65b8ddbdee32d6ed4e59198ad Mon Sep 17 00:00:00 2001
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Date: Fri, 19 Jun 2020 15:42:27 -0400
Date: Mon, 27 Jul 2020 13:29:01 +0200
Subject: x86: Add 8.3.0 x86_64 machine type
RH-Author: Dr. David Alan Gilbert <dgilbert@redhat.com>
@ -17,6 +17,7 @@ From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
Not much change, just the smbase-smram.
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/i386/pc.c | 6 ++++++
@ -26,10 +27,10 @@ Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
4 files changed, 35 insertions(+)
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index fe37bdec7a..94c857ea97 100644
index 063f01d19a..a75e0137ab 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -360,6 +360,12 @@ GlobalProperty pc_rhel_compat[] = {
@@ -361,6 +361,12 @@ GlobalProperty pc_rhel_compat[] = {
};
const size_t pc_rhel_compat_len = G_N_ELEMENTS(pc_rhel_compat);
@ -43,10 +44,10 @@ index fe37bdec7a..94c857ea97 100644
GlobalProperty pc_rhel_8_1_compat[] = { };
const size_t pc_rhel_8_1_compat_len = G_N_ELEMENTS(pc_rhel_8_1_compat);
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index eeadd896c2..f14ddcb472 100644
index 6d935645b6..4af4497a0c 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -1028,6 +1028,10 @@ static void pc_machine_rhel760_options(MachineClass *m)
@@ -1030,6 +1030,10 @@ static void pc_machine_rhel760_options(MachineClass *m)
m->smbus_no_migration_support = true;
pcmc->pvh_enabled = false;
pcmc->default_cpu_version = CPU_VERSION_LEGACY;
@ -58,10 +59,10 @@ index eeadd896c2..f14ddcb472 100644
compat_props_add(m->compat_props, pc_rhel_8_1_compat, pc_rhel_8_1_compat_len);
compat_props_add(m->compat_props, hw_compat_rhel_8_0, hw_compat_rhel_8_0_len);
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 1cd4e15297..b9e8dcb392 100644
index f4edb049d6..d75d6d8805 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -590,6 +590,23 @@ static void pc_q35_machine_rhel_options(MachineClass *m)
@@ -589,6 +589,23 @@ static void pc_q35_machine_rhel_options(MachineClass *m)
compat_props_add(m->compat_props, pc_rhel_compat, pc_rhel_compat_len);
}
@ -85,7 +86,7 @@ index 1cd4e15297..b9e8dcb392 100644
static void pc_q35_init_rhel820(MachineState *machine)
{
pc_q35_init(machine);
@@ -600,8 +617,13 @@ static void pc_q35_machine_rhel820_options(MachineClass *m)
@@ -599,8 +616,13 @@ static void pc_q35_machine_rhel820_options(MachineClass *m)
PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
pc_q35_machine_rhel_options(m);
m->desc = "RHEL-8.2.0 PC (Q35 + ICH9, 2009)";
@ -100,10 +101,10 @@ index 1cd4e15297..b9e8dcb392 100644
DEFINE_PC_MACHINE(q35_rhel820, "pc-q35-rhel8.2.0", pc_q35_init_rhel820,
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 95d07f81a0..e67468ba41 100644
index 156be22995..e9dc8c370c 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -270,6 +270,9 @@ extern const size_t pc_compat_1_4_len;
@@ -271,6 +271,9 @@ extern const size_t pc_compat_1_4_len;
extern GlobalProperty pc_rhel_compat[];
extern const size_t pc_rhel_compat_len;

View File

@ -0,0 +1,82 @@
From 12990ad9479216d96e4d67a7e613d2ef3b4fb700 Mon Sep 17 00:00:00 2001
From: Gavin Shan <gshan@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: hw/arm: Changes to rhel820 machine
RH-Author: Gavin Shan <gshan@redhat.com>
Message-id: <20200630013648.101937-1-gshan@redhat.com>
Patchwork-id: 97844
O-Subject: [RHEL-AV 8.3.0 qemu-kvm PATCH v5 1/3] hw/arm: Changes to rhel820 machine
Bugzilla: 1818843
RH-Acked-by: Auger Eric <eric.auger@redhat.com>
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
RH-Acked-by: Andrew Jones <drjones@redhat.com>
This applies two changes to rhel820 machine:
* Set the gic version to VIRT_GIC_VERSION_NOSEL by default, which
doesn't cause functional changes.
* Disallow to configure the RAS property, which is hidden by default.
Signed-off-by: Gavin Shan <gshan@redhat.com>
RH-Acked-by: Auger Eric <eric.auger@redhat.com>
RH-Acked-by: Andrew Jones <drjones@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/arm/virt.c | 17 +++++------------
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index e1a17e7c87..c22e1e6d5c 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -2105,6 +2105,7 @@ static void virt_set_acpi(Object *obj, Visitor *v, const char *name,
visit_type_OnOffAuto(v, name, &vms->acpi, errp);
}
+#if 0 /* Disabled for Red Hat Enterprise Linux */
static bool virt_get_ras(Object *obj, Error **errp)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
@@ -2125,6 +2126,7 @@ static bool virt_get_mte(Object *obj, Error **errp)
return vms->mte;
}
+#endif /* disabled for RHEL */
static void virt_set_mte(Object *obj, bool value, Error **errp)
{
@@ -2802,12 +2804,8 @@ static void rhel820_virt_instance_init(Object *obj)
object_property_set_description(obj, "highmem",
"Set on/off to enable/disable using "
"physical address space above 32 bits");
- /*
- * Default GIC type is still v2, but became configurable for RHEL. We
- * keep v2 instead of max as TCG CI test cases require an MSI controller
- * and there is no userspace ITS MSI emulation available.
- */
- vms->gic_version = 2;
+
+ vms->gic_version = VIRT_GIC_VERSION_NOSEL;
object_property_add_str(obj, "gic-version", virt_get_gic_version,
virt_set_gic_version);
object_property_set_description(obj, "gic-version",
@@ -2834,13 +2832,8 @@ static void rhel820_virt_instance_init(Object *obj)
object_property_set_description(obj, "iommu",
"Set the IOMMU type. "
"Valid values are none and smmuv3");
- vms->ras = false;
- object_property_add_bool(obj, "ras", virt_get_ras,
- virt_set_ras);
- object_property_set_description(obj, "ras",
- "Set on/off to enable/disable reporting host memory errors "
- "to a KVM guest using ACPI and guest external abort exceptions");
+ vms->ras = false;
/* MTE is disabled by default. */
vms->mte = false;
--
2.27.0

View File

@ -0,0 +1,53 @@
From 46d5a797986373ecc0dfa578cae07a3641847935 Mon Sep 17 00:00:00 2001
From: Gavin Shan <gshan@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: hw/arm: Introduce rhel_virt_instance_init() helper
RH-Author: Gavin Shan <gshan@redhat.com>
Message-id: <20200629022939.76453-3-gshan@redhat.com>
Patchwork-id: 97838
O-Subject: [RHEL-AV 8.3.0 qemu-kvm PATCH v4 2/3] hw/arm: Introduce rhel_virt_instance_init() helper
Bugzilla: 1818843
RH-Acked-by: Auger Eric <eric.auger@redhat.com>
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
RH-Acked-by: Andrew Jones <drjones@redhat.com>
This introduces rhel_virt_instance_init() helper function so that
it can be shared by rhel820 and rhel830 machine. This shouldn't
cause functional changes.
Signed-off-by: Gavin Shan <gshan@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/arm/virt.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index c22e1e6d5c..650668a8d1 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -2788,7 +2788,7 @@ static void rhel_machine_init(void)
}
type_init(rhel_machine_init);
-static void rhel820_virt_instance_init(Object *obj)
+static void rhel_virt_instance_init(Object *obj)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
VirtMachineClass *vmc = VIRT_MACHINE_GET_CLASS(vms);
@@ -2841,6 +2841,11 @@ static void rhel820_virt_instance_init(Object *obj)
virt_flash_create(vms);
}
+static void rhel820_virt_instance_init(Object *obj)
+{
+ rhel_virt_instance_init(obj);
+}
+
static void rhel820_virt_options(MachineClass *mc)
{
compat_props_add(mc->compat_props, arm_rhel_compat, arm_rhel_compat_len);
--
2.27.0

View File

@ -0,0 +1,61 @@
From 098954acda750a54d2eb512297bcd205212ee718 Mon Sep 17 00:00:00 2001
From: Gavin Shan <gshan@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: hw/arm: Add rhel830 machine type
RH-Author: Gavin Shan <gshan@redhat.com>
Message-id: <20200630014756.102753-1-gshan@redhat.com>
Patchwork-id: 97845
O-Subject: [RHEL-AV 8.3.0 qemu-kvm PATCH v5 3/3] hw/arm: Add rhel830 machine type
Bugzilla: 1818843
RH-Acked-by: Auger Eric <eric.auger@redhat.com>
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
RH-Acked-by: Andrew Jones <drjones@redhat.com>
This adds rhel830 machine type, whose properties are same as to
rhel820.
Signed-off-by: Gavin Shan <gshan@redhat.com>
RH-Acked-by: Auger Eric <eric.auger@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/arm/virt.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 650668a8d1..48b58be597 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -2841,6 +2841,17 @@ static void rhel_virt_instance_init(Object *obj)
virt_flash_create(vms);
}
+static void rhel830_virt_instance_init(Object *obj)
+{
+ rhel_virt_instance_init(obj);
+}
+
+static void rhel830_virt_options(MachineClass *mc)
+{
+ compat_props_add(mc->compat_props, arm_rhel_compat, arm_rhel_compat_len);
+}
+DEFINE_RHEL_MACHINE_AS_LATEST(8, 3, 0)
+
static void rhel820_virt_instance_init(Object *obj)
{
rhel_virt_instance_init(obj);
@@ -2848,6 +2859,8 @@ static void rhel820_virt_instance_init(Object *obj)
static void rhel820_virt_options(MachineClass *mc)
{
- compat_props_add(mc->compat_props, arm_rhel_compat, arm_rhel_compat_len);
+ rhel830_virt_options(mc);
+ compat_props_add(mc->compat_props, hw_compat_rhel_8_2,
+ hw_compat_rhel_8_2_len);
}
-DEFINE_RHEL_MACHINE_AS_LATEST(8, 2, 0)
+DEFINE_RHEL_MACHINE(8, 2, 0)
--
2.27.0

View File

@ -0,0 +1,77 @@
From 311a20fb12a4d0ebed840be194db8117c8eea595 Mon Sep 17 00:00:00 2001
From: Laurent Vivier <lvivier@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: redhat: define pseries-rhel8.3.0 machine type
RH-Author: Laurent Vivier <lvivier@redhat.com>
Message-id: <20200706104117.219174-3-lvivier@redhat.com>
Patchwork-id: 97904
O-Subject: [RHEL-AV-8.3.0 qemu-kvm PATCH v2 2/2] redhat: define pseries-rhel8.3.0 machine type
Bugzilla: 1853265
RH-Acked-by: Thomas Huth <thuth@redhat.com>
Note: rebase to qemu-5.1 introduces
32a354dc6c07 ("numa: forbid '-numa node, mem' for 5.1 and newer machine types")
and so '-numa node, mem' will not be available with pseries-rhel8.3.0
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/ppc/spapr.c | 30 ++++++++++++++++++++++++++++--
1 file changed, 28 insertions(+), 2 deletions(-)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 756c8667c1..ccceb6d39f 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -4995,16 +4995,42 @@ static void spapr_machine_2_1_class_options(MachineClass *mc)
DEFINE_SPAPR_MACHINE(2_1, "2.1", false);
#endif
+/*
+ * pseries-rhel8.3.0
+ * like pseries-5.1
+ */
+
+static void spapr_machine_rhel830_class_options(MachineClass *mc)
+{
+ /* Defaults for the latest behaviour inherited from the base class */
+}
+
+DEFINE_SPAPR_MACHINE(rhel830, "rhel8.3.0", true);
+
/*
* pseries-rhel8.2.0
+ * like pseries-4.2 + pseries-5.0
+ * except SPAPR_CAP_CCF_ASSIST that has been backported to pseries-rhel8.1.0
*/
static void spapr_machine_rhel820_class_options(MachineClass *mc)
{
- /* Defaults for the latest behaviour inherited from the base class */
+ SpaprMachineClass *smc = SPAPR_MACHINE_CLASS(mc);
+
+ spapr_machine_rhel830_class_options(mc);
+ compat_props_add(mc->compat_props, hw_compat_rhel_8_2,
+ hw_compat_rhel_8_2_len);
+
+ /* from pseries-4.2 */
+ smc->default_caps.caps[SPAPR_CAP_FWNMI] = SPAPR_CAP_OFF;
+ smc->rma_limit = 16 * GiB;
+ mc->nvdimm_supported = false;
+
+ /* from pseries-5.0 */
+ mc->numa_mem_supported = true;
}
-DEFINE_SPAPR_MACHINE(rhel820, "rhel8.2.0", true);
+DEFINE_SPAPR_MACHINE(rhel820, "rhel8.2.0", false);
/*
* pseries-rhel8.1.0
--
2.27.0

View File

@ -0,0 +1,49 @@
From 12841675e2a81f3b98cb9741b54c3041cebf9e87 Mon Sep 17 00:00:00 2001
From: Eduardo Habkost <ehabkost@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: ppc: Set correct max_cpus value on spapr-rhel* machine types
RH-Author: Eduardo Habkost <ehabkost@redhat.com>
Message-id: <20200729180236.627559-2-ehabkost@redhat.com>
Patchwork-id: 98073
O-Subject: [RHEL-AV-8.3.0 qemu-kvm PATCH v2 1/4] ppc: Set correct max_cpus value on spapr-rhel* machine types
Bugzilla: 1819292
RH-Acked-by: Andrew Jones <drjones@redhat.com>
RH-Acked-by: Thomas Huth <thuth@redhat.com>
RH-Acked-by: David Gibson <dgibson@redhat.com>
Currently vl.c forces MachineClass::max_cpus to be
<= RHEL_MAX_CPUS (384) on all machine types.
Instead of relying on that global limit, set max_cpus=384
explicitly at spapr_machine_rhel820_class_options(), which will
affect all pseriesl-rhel* machine types.
This will keep exactly the same behavior as before, but will
allow us to remove the downstream-only RHEL_MAX_CPUS code at vl.c
later.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/ppc/spapr.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index ccceb6d39f..1c367a2367 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -5003,6 +5003,9 @@ DEFINE_SPAPR_MACHINE(2_1, "2.1", false);
static void spapr_machine_rhel830_class_options(MachineClass *mc)
{
/* Defaults for the latest behaviour inherited from the base class */
+
+ /* Maximum supported VCPU count for all pseries-rhel* machines */
+ mc->max_cpus = 384;
}
DEFINE_SPAPR_MACHINE(rhel830, "rhel8.3.0", true);
--
2.27.0

View File

@ -0,0 +1,53 @@
From ee8e99d0a7821b26d0afe20c3a1f7517e4fa6772 Mon Sep 17 00:00:00 2001
From: Eduardo Habkost <ehabkost@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: arm: Set correct max_cpus value on virt-rhel* machine types
RH-Author: Eduardo Habkost <ehabkost@redhat.com>
Message-id: <20200729180236.627559-3-ehabkost@redhat.com>
Patchwork-id: 98074
O-Subject: [RHEL-AV-8.3.0 qemu-kvm PATCH v2 2/4] arm: Set correct max_cpus value on virt-rhel* machine types
Bugzilla: 1819292
RH-Acked-by: Andrew Jones <drjones@redhat.com>
RH-Acked-by: Thomas Huth <thuth@redhat.com>
RH-Acked-by: David Gibson <dgibson@redhat.com>
Currently vl.c forces MachineClass::max_cpus to be
<= RHEL_MAX_CPUS (384) on all machine types.
Instead of relying on that global limit, set max_cpus=384
explicitly at the virt-rhel-machine base class, which will affect
all virt-rhel* machine types.
This will keep exactly the same behavior as before, but will
allow us to remove the downstream-only RHEL_MAX_CPUS code at vl.c
later.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/arm/virt.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 48b58be597..fb5a5a7013 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -2736,11 +2736,8 @@ static void rhel_machine_class_init(ObjectClass *oc, void *data)
mc->family = "virt-rhel-Z";
mc->init = machvirt_init;
- /* Start with max_cpus set to 512, which is the maximum supported by KVM.
- * The value may be reduced later when we have more information about the
- * configuration of the particular instance.
- */
- mc->max_cpus = 512;
+ /* Maximum supported VCPU count for all virt-rhel* machines */
+ mc->max_cpus = 384;
mc->block_default_type = IF_VIRTIO;
mc->no_cdrom = 1;
mc->pci_allow_0_address = true;
--
2.27.0

View File

@ -0,0 +1,83 @@
From f8a4123e211ed0685097f496c99e73913a6b34d0 Mon Sep 17 00:00:00 2001
From: Eduardo Habkost <ehabkost@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: vl: Remove downstream-only MAX_RHEL_CPUS code
RH-Author: Eduardo Habkost <ehabkost@redhat.com>
Message-id: <20200729180236.627559-4-ehabkost@redhat.com>
Patchwork-id: 98075
O-Subject: [RHEL-AV-8.3.0 qemu-kvm PATCH v2 3/4] vl: Remove downstream-only MAX_RHEL_CPUS code
Bugzilla: 1819292
RH-Acked-by: Andrew Jones <drjones@redhat.com>
RH-Acked-by: Thomas Huth <thuth@redhat.com>
RH-Acked-by: David Gibson <dgibson@redhat.com>
Now that all machine types have max_cpus set to the actual
supported number of VCPUs, the MAX_RHEL_CPUS code becomes
unnecessary and can be completely removed.
For reference these are the max_cpus values set by the RHEL
machine types:
- arm: virt-rhel*: max_cpus=384 (rhel_machine_class_init());
- ppc: spapr-rhel*: max_cpus=384
(spapr_machine_rhel820_class_options());
- s390: s390-ccw*: max_cpus=248 (ccw_machine_class_init());
- x86: q35: max_cpus=384 (pc_q35_machine_rhel_options());
- x86: q35-rhel7.3.0 and older: max_cpus=255
(pc_q35_machine_rhel730_options());
- x86: pc-i440fx*: max_cpus=240 (pc_machine_class_init()).
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
softmmu/vl.c | 18 ------------------
1 file changed, 18 deletions(-)
diff --git a/softmmu/vl.c b/softmmu/vl.c
index 62fc7c898f..3c383911cd 100644
--- a/softmmu/vl.c
+++ b/softmmu/vl.c
@@ -116,8 +116,6 @@
#define MAX_VIRTIO_CONSOLES 1
-#define RHEL_MAX_CPUS 384
-
static const char *data_dir[16];
static int data_dir_idx;
const char *bios_name = NULL;
@@ -1191,20 +1189,6 @@ static MachineClass *find_default_machine(GSList *machines)
return default_machineclass;
}
-/* Maximum number of CPUs limited for Red Hat Enterprise Linux */
-static void limit_max_cpus_in_machines(void)
-{
- GSList *el, *machines = object_class_get_list(TYPE_MACHINE, false);
-
- for (el = machines; el; el = el->next) {
- MachineClass *mc = el->data;
-
- if (mc->max_cpus > RHEL_MAX_CPUS) {
- mc->max_cpus = RHEL_MAX_CPUS;
- }
- }
-}
-
static int machine_help_func(QemuOpts *opts, MachineState *machine)
{
ObjectProperty *prop;
@@ -3861,8 +3845,6 @@ void qemu_init(int argc, char **argv, char **envp)
"mutually exclusive");
exit(EXIT_FAILURE);
}
- /* Maximum number of CPUs limited for Red Hat Enterprise Linux */
- limit_max_cpus_in_machines();
configure_rtc(qemu_find_opts_singleton("rtc"));
--
2.27.0

View File

@ -0,0 +1,45 @@
From f2edc4f9262e9130d020ef6caef2443e7ae31371 Mon Sep 17 00:00:00 2001
From: Eduardo Habkost <ehabkost@redhat.com>
Date: Wed, 12 Aug 2020 10:58:04 +0200
Subject: q35: Set max_cpus to 512
RH-Author: Eduardo Habkost <ehabkost@redhat.com>
Message-id: <20200729180236.627559-5-ehabkost@redhat.com>
Patchwork-id: 98076
O-Subject: [RHEL-AV-8.3.0 qemu-kvm PATCH v2 4/4] q35: Set max_cpus to 512
Bugzilla: 1819292
RH-Acked-by: Andrew Jones <drjones@redhat.com>
RH-Acked-by: Thomas Huth <thuth@redhat.com>
RH-Acked-by: David Gibson <dgibson@redhat.com>
Increase supported VCPU count for the Q35 machine type.
The VCPU count that partners confirmed to work depended on other
parameters (especially RAM size), but fluctuated between 640 and
710 VCPUs. I chose to increase the limit to 512 to be
conservative, until we find out what exactly prevents larger VMs
from booting.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/i386/pc_q35.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index d75d6d8805..c709460ab7 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -585,7 +585,7 @@ static void pc_q35_machine_rhel_options(MachineClass *m)
machine_class_allow_dynamic_sysbus_dev(m, TYPE_INTEL_IOMMU_DEVICE);
machine_class_allow_dynamic_sysbus_dev(m, TYPE_RAMFB_DEVICE);
m->alias = "q35";
- m->max_cpus = 384;
+ m->max_cpus = 512;
compat_props_add(m->compat_props, pc_rhel_compat, pc_rhel_compat_len);
}
--
2.27.0

View File

@ -0,0 +1,39 @@
From e5edd3824a782900bcb7aa2a980696e550b55cf6 Mon Sep 17 00:00:00 2001
From: Eric Auger <eric.auger@redhat.com>
Date: Wed, 12 Aug 2020 11:03:02 +0200
Subject: RHEL-only: arm/virt: Allow the TPM_TIS_SYSBUS device dynamic
allocation in machvirt
RH-Author: Auger Eric <eric.auger@redhat.com>
Message-id: <20200811163601.14341-2-eric.auger@redhat.com>
Patchwork-id: 98143
O-Subject: [RHEL-AV-8.3.0 qemu-kvm PATCH 1/2] RHEL-only: arm/virt: Allow the TPM_TIS_SYSBUS device dynamic allocation in machvirt
Bugzilla: 1801242
Allow the TPM_TIS_SYSBUS device dynamic instantiation onto the
platform bus. The TPM_TIS sysbus device compilation will be enabled
in a separate patch. That way associated qmp tests pass once the config
is set.
Signed-off-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/arm/virt.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index fb5a5a7013..f087483a04 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -2738,6 +2738,7 @@ static void rhel_machine_class_init(ObjectClass *oc, void *data)
mc->init = machvirt_init;
/* Maximum supported VCPU count for all virt-rhel* machines */
mc->max_cpus = 384;
+ machine_class_allow_dynamic_sysbus_dev(mc, TYPE_TPM_TIS_SYSBUS);
mc->block_default_type = IF_VIRTIO;
mc->no_cdrom = 1;
mc->pci_allow_0_address = true;
--
2.27.0

View File

@ -0,0 +1,35 @@
From 8310f89d8818bc9d41b386bbb2824593aa8e8dca Mon Sep 17 00:00:00 2001
From: Auger Eric <eric.auger@redhat.com>
Date: Wed, 12 Aug 2020 11:03:31 +0200
Subject: RHEL-only: Enable vTPM for ARM in downstream configs
RH-Author: Auger Eric <eric.auger@redhat.com>
Message-id: <20200811163601.14341-3-eric.auger@redhat.com>
Patchwork-id: 98144
O-Subject: [RHEL-AV-8.3.0 qemu-kvm PATCH 2/2] RHEL-only: Enable vTPM for ARM in downstream configs
Bugzilla: 1801242
We allow the compilation of the TPM_TIS_SYSBUS device and both
passthrough and software emulation backends.
Signed-off-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
default-configs/aarch64-rh-devices.mak | 3 +++
1 file changed, 3 insertions(+)
diff --git a/default-configs/aarch64-rh-devices.mak b/default-configs/aarch64-rh-devices.mak
index f0cf5a1b22..0b6a03f816 100644
--- a/default-configs/aarch64-rh-devices.mak
+++ b/default-configs/aarch64-rh-devices.mak
@@ -20,3 +20,6 @@ CONFIG_VIRTIO_PCI=y
CONFIG_XIO3130=y
CONFIG_NVDIMM=y
CONFIG_ACPI_APEI=y
+CONFIG_TPM_EMULATOR=y
+CONFIG_TPM_PASSTHROUGH=y
+CONFIG_TPM_TIS_SYSBUS=y
--
2.27.0

View File

@ -10,6 +10,7 @@
%global have_memlock_limits 0
%ifnarch %{ix86} x86_64
%global have_usbredir 0
%endif
@ -67,8 +68,8 @@ Obsoletes: %1-rhev
Summary: QEMU is a machine emulator and virtualizer
Name: qemu-kvm
Version: 5.0.0
Release: 2%{?dist}
Version: 5.1.0
Release: 0%{?dist}
# Epoch because we pushed a qemu-1.0 package. AIUI this can't ever be dropped
Epoch: 15
License: GPLv2 and GPLv2+ and CC-BY
@ -77,7 +78,7 @@ URL: http://www.qemu.org/
ExclusiveArch: x86_64 %{power64} aarch64 s390x
Source0: http://wiki.qemu.org/download/qemu-5.0.0.tar.xz
Source0: http://wiki.qemu.org/download/qemu-5.1.0.tar.xz
# KSM control scripts
Source4: ksm.service
@ -123,11 +124,20 @@ Patch0018: 0018-usb-xhci-Fix-PCI-capability-order.patch
Patch0019: 0019-virtio-scsi-Reject-scsi-cd-if-data-plane-enabled-RHE.patch
Patch0020: 0020-BZ1653590-Require-at-least-64kiB-pages-for-downstrea.patch
Patch0021: 0021-block-Versioned-x-blockdev-reopen-API-with-feature-f.patch
Patch0022: 0022-virtio-net-fix-removal-of-failover-device.patch
Patch0024: 0024-RHEL-only-Enable-vTPM-for-POWER-in-downstream-config.patch
Patch0025: 0025-redhat-fix-5.0-rebase-missing-ISA-TPM-TIS.patch
Patch0026: 0026-redhat-define-hw_compat_8_2.patch
Patch0027: 0027-x86-Add-8.3.0-x86_64-machine-type.patch
Patch0022: 0022-RHEL-only-Enable-vTPM-for-POWER-in-downstream-config.patch
Patch0023: 0023-redhat-fix-5.0-rebase-missing-ISA-TPM-TIS.patch
Patch0024: 0024-redhat-define-hw_compat_8_2.patch
Patch0025: 0025-x86-Add-8.3.0-x86_64-machine-type.patch
Patch0027: 0027-hw-arm-Changes-to-rhel820-machine.patch
Patch0028: 0028-hw-arm-Introduce-rhel_virt_instance_init-helper.patch
Patch0029: 0029-hw-arm-Add-rhel830-machine-type.patch
Patch0030: 0030-redhat-define-pseries-rhel8.3.0-machine-type.patch
Patch0031: 0031-ppc-Set-correct-max_cpus-value-on-spapr-rhel-machine.patch
Patch0032: 0032-arm-Set-correct-max_cpus-value-on-virt-rhel-machine-.patch
Patch0033: 0033-vl-Remove-downstream-only-MAX_RHEL_CPUS-code.patch
Patch0034: 0034-q35-Set-max_cpus-to-512.patch
Patch0035: 0035-RHEL-only-arm-virt-Allow-the-TPM_TIS_SYSBUS-device-d.patch
Patch0036: 0036-RHEL-only-Enable-vTPM-for-ARM-in-downstream-configs.patch
BuildRequires: wget
BuildRequires: rpm-build
@ -144,7 +154,7 @@ BuildRequires: pciutils-devel
BuildRequires: libiscsi-devel
BuildRequires: ncurses-devel
BuildRequires: libattr-devel
BuildRequires: libusbx-devel >= 1.0.22
BuildRequires: libusbx-devel >= 1.0.23
%if %{have_usbredir}
BuildRequires: usbredir-devel >= 0.7.1
%endif
@ -193,7 +203,8 @@ BuildRequires: python3-sphinx
BuildRequires: rdma-core-devel
%endif
%if %{have_fdt}
BuildRequires: libfdt-devel >= 1.4.3
BuildRequires: libfdt-devel >= 1.6.0
Requires: libfdt >= 1.6.0
%endif
# iasl and cpp for acpi generation (not a hard requirement as we can use
# pre-compiled files, but it's better to use this)
@ -430,6 +441,7 @@ buildldflags="VL_LDFLAGS=-Wl,--build-id"
%global block_drivers_list %{block_drivers_list},gluster
%endif
cd qemu-kvm-build
../configure \
--prefix="%{_prefix}" \
@ -498,6 +510,7 @@ cd qemu-kvm-build
--enable-iconv \
--disable-jemalloc \
--enable-kvm \
--disable-libdaxctl \
--enable-libiscsi \
--disable-libnfs \
%ifarch x86_64
@ -543,7 +556,9 @@ cd qemu-kvm-build
%else
--disable-rdma \
%endif
--disable-rng-none \
--disable-replication \
--disable-safe-stack \
--disable-sanitizers \
--disable-sdl \
--disable-sdl-image \
@ -578,6 +593,7 @@ cd qemu-kvm-build
--enable-vhost-net \
--disable-vhost-scsi \
--enable-vhost-user \
--enable-vhost-vdpa \
--enable-vhost-vsock \
%if 0%{have_spice}
--enable-virglrenderer \
@ -591,13 +607,13 @@ cd qemu-kvm-build
--enable-vnc-sasl \
--disable-vte \
--disable-vvfat \
--disable-vxhs \
--enable-werror \
--disable-whpx \
--disable-xen \
--disable-xen-pci-passthrough \
--disable-xfsctl \
--enable-xkbcommon \
--disable-zstd \
--without-default-devices
echo "config-host.mak contents:"
@ -1036,6 +1052,15 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
%endif
%{_libexecdir}/virtiofsd
%{_datadir}/%{name}/vhost-user/50-qemu-virtiofsd.json
%if %{have_usbredir}
%{_libdir}/qemu-kvm/hw-usb-redirect.so
%endif
%if 0%{have_spice}
%{_libdir}/qemu-kvm/hw-usb-smartcard.so
%endif
%ifarch x86_64
%{_libdir}/qemu-kvm/hw-display-qxl.so
%endif
%files -n qemu-img
%defattr(-,root,root)
@ -1079,12 +1104,9 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
%changelog
* Wed Jul 15 2020 Danilo Cesar Lemes de Paula <ddepaula@redhat.com> - 5.0.0-2.el8
- Resolves: bz#1781911
- Resolves: bz#1841529
- Resolves: bz#1842902
(This is an unofficial build that fixes the BZs mentioned above)
* Wed Aug 12 2020 Danilo Cesar Lemes de Paula <ddepaula@redhat.com> - 5.1.0-0.el8
- Rebase to 5.1.0
- Resolves: bz#1809650
* Tue Jul 07 2020 Danilo Cesar Lemes de Paula <ddepaula@redhat.com> - 4.2.0-29.el8
- kvm-virtio-net-fix-removal-of-failover-device.patch [bz#1820120]

View File

@ -1 +1 @@
SHA512 (qemu-5.0.0.tar.xz) = 2011fc15747d9d8effcf0af4e1e3af6440eaf801c27948a8bdf97d0cb33cf99ac380f828c1aee02e55e2c2c6c674150a264ce025c99642c8f974fda34be285cd
SHA512 (qemu-5.1.0.tar.xz) = e213edb71d93d5167ddce7546220ecb7b52a7778586a4f476f65bd1e510c9cfc6d1876238a7b501d9cc3fd31cc2ae4b7fb9e753bc3f12cc17cd16dfce2a96ba3