* [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins)
@ 2020-11-10 19:23 Alex Bennée
2020-11-10 19:23 ` [PATCH v1 01/10] plugins: Fix resource leak in connect_socket() Alex Bennée
` (10 more replies)
0 siblings, 11 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel; +Cc: peter.maydell, Alex Bennée
Hi,
This collects together a bunch of fixes for 5.2:
- a few resource leak fixes for plugins
- Xen on arm64 build fixes (from my larger Xen series)
- a couple of build and CI fixes
- a tweak to the gitlab status script
I can drop the last patch if I have to but it hopefully allows for
easier scripting of the "waiting for gitlab" experience for those that
are not using "staging".
The following need review:
- scripts/ci: clean up default args logic a little
- gitlab: move remaining x86 check-tcg targets to gitlab
Alex Bennée (6):
meson.build: fix building of Xen support for aarch64
include/hw/xen.h: drop superfluous struct
stubs/xen-hw-stub: drop xenstore_store_pv_console_info stub
accel/stubs: drop unused cpu.h include
gitlab: move remaining x86 check-tcg targets to gitlab
scripts/ci: clean up default args logic a little
Alex Chen (2):
plugins: Fix resource leak in connect_socket()
plugins: Fix two resource leaks in setup_socket()
Philippe Mathieu-Daudé (2):
hw/i386/acpi-build: Fix maybe-uninitialized error when ACPI hotplug
off
tests/acceptance: Disable Spartan-3A DSP 1800A test
meson.build | 7 ++++-
include/hw/xen/xen.h | 2 +-
accel/stubs/hax-stub.c | 1 -
contrib/plugins/lockstep.c | 3 ++
hw/i386/acpi-build.c | 41 ++++++++++++--------------
stubs/xen-hw-stub.c | 4 ---
.gitlab-ci.yml | 17 +++++++++++
.travis.yml | 26 ----------------
scripts/ci/gitlab-pipeline-status | 24 ++++++++-------
tests/acceptance/boot_linux_console.py | 2 ++
tests/acceptance/replay_kernel.py | 2 ++
11 files changed, 63 insertions(+), 66 deletions(-)
--
2.20.1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH v1 01/10] plugins: Fix resource leak in connect_socket()
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 02/10] plugins: Fix two resource leaks in setup_socket() Alex Bennée
` (9 subsequent siblings)
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel; +Cc: Alex Chen, peter.maydell, Alex Bennée, Euler Robot
From: Alex Chen <alex.chen@huawei.com>
Close the fd when the connect() fails.
Reported-by: Euler Robot <euler.robot@huawei.com>
Signed-off-by: Alex Chen <alex.chen@huawei.com>
Message-Id: <20201109082829.87496-2-alex.chen@huawei.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
contrib/plugins/lockstep.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index a696673dff..319bd44b83 100644
--- a/contrib/plugins/lockstep.c
+++ b/contrib/plugins/lockstep.c
@@ -292,6 +292,7 @@ static bool connect_socket(const char *path)
if (connect(fd, (struct sockaddr *)&sockaddr, sizeof(sockaddr)) < 0) {
perror("failed to connect");
+ close(fd);
return false;
}
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 02/10] plugins: Fix two resource leaks in setup_socket()
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
2020-11-10 19:23 ` [PATCH v1 01/10] plugins: Fix resource leak in connect_socket() Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 03/10] meson.build: fix building of Xen support for aarch64 Alex Bennée
` (8 subsequent siblings)
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel; +Cc: Alex Chen, peter.maydell, Alex Bennée, Euler Robot
From: Alex Chen <alex.chen@huawei.com>
Either accept() fails or exits normally, we need to close the fd.
Reported-by: Euler Robot <euler.robot@huawei.com>
Signed-off-by: Alex Chen <alex.chen@huawei.com>
Message-Id: <20201109082829.87496-3-alex.chen@huawei.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
contrib/plugins/lockstep.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index 319bd44b83..5aad50869d 100644
--- a/contrib/plugins/lockstep.c
+++ b/contrib/plugins/lockstep.c
@@ -268,11 +268,13 @@ static bool setup_socket(const char *path)
socket_fd = accept(fd, NULL, NULL);
if (socket_fd < 0 && errno != EINTR) {
perror("accept socket");
+ close(fd);
return false;
}
qemu_plugin_outs("setup_socket::ready\n");
+ close(fd);
return true;
}
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 03/10] meson.build: fix building of Xen support for aarch64
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
2020-11-10 19:23 ` [PATCH v1 01/10] plugins: Fix resource leak in connect_socket() Alex Bennée
2020-11-10 19:23 ` [PATCH v1 02/10] plugins: Fix two resource leaks in setup_socket() Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 04/10] include/hw/xen.h: drop superfluous struct Alex Bennée
` (7 subsequent siblings)
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: peter.maydell, Stefano Stabellini, Masami Hiramatsu, Paul Durrant,
Alex Bennée, Anthony Perard, Paolo Bonzini,
Philippe Mathieu-Daudé
Xen is supported on ARM although weirdly using the i386-softmmu model.
Checking based on the host CPU meant we never enabled Xen support. It
would be nice to enable CONFIG_XEN for aarch64-softmmu to make it not
seem weird but that will require further build surgery.
Fixes: 8a19980e3f ("configure: move accelerator logic to meson")
Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Cc: Masami Hiramatsu <masami.hiramatsu@linaro.org>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Paul Durrant <paul@xen.org>
Message-Id: <20201105175153.30489-9-alex.bennee@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
meson.build | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index b473620321..ef197f9a6b 100644
--- a/meson.build
+++ b/meson.build
@@ -74,10 +74,15 @@ else
endif
accelerator_targets = { 'CONFIG_KVM': kvm_targets }
+if cpu in ['x86', 'x86_64', 'arm', 'aarch64']
+ # i368 emulator provides xenpv machine type for multiple architectures
+ accelerator_targets += {
+ 'CONFIG_XEN': ['i386-softmmu', 'x86_64-softmmu'],
+ }
+endif
if cpu in ['x86', 'x86_64']
accelerator_targets += {
'CONFIG_HAX': ['i386-softmmu', 'x86_64-softmmu'],
- 'CONFIG_XEN': ['i386-softmmu', 'x86_64-softmmu'],
'CONFIG_HVF': ['x86_64-softmmu'],
'CONFIG_WHPX': ['i386-softmmu', 'x86_64-softmmu'],
}
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 04/10] include/hw/xen.h: drop superfluous struct
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (2 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 03/10] meson.build: fix building of Xen support for aarch64 Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 05/10] stubs/xen-hw-stub: drop xenstore_store_pv_console_info stub Alex Bennée
` (6 subsequent siblings)
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: peter.maydell, Stefano Stabellini, Paul Durrant,
Philippe Mathieu-Daudé, Anthony Perard,
open list:X86 Xen CPUs, Alex Bennée
Chardev is already a typedef'ed struct.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20201105175153.30489-12-alex.bennee@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
include/hw/xen/xen.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h
index 1406648ca5..0f9962b1c1 100644
--- a/include/hw/xen/xen.h
+++ b/include/hw/xen/xen.h
@@ -28,7 +28,7 @@ int xen_is_pirq_msi(uint32_t msi_data);
qemu_irq *xen_interrupt_controller_init(void);
-void xenstore_store_pv_console_info(int i, struct Chardev *chr);
+void xenstore_store_pv_console_info(int i, Chardev *chr);
void xen_register_framebuffer(struct MemoryRegion *mr);
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 05/10] stubs/xen-hw-stub: drop xenstore_store_pv_console_info stub
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (3 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 04/10] include/hw/xen.h: drop superfluous struct Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 06/10] accel/stubs: drop unused cpu.h include Alex Bennée
` (5 subsequent siblings)
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: peter.maydell, Stefano Stabellini, Paul Durrant,
Philippe Mathieu-Daudé, open list:X86 Xen CPUs,
Anthony Perard, Paolo Bonzini, Alex Bennée
We should never build something that calls this without having it.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20201105175153.30489-13-alex.bennee@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
stubs/xen-hw-stub.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/stubs/xen-hw-stub.c b/stubs/xen-hw-stub.c
index 2ea8190921..15f3921a76 100644
--- a/stubs/xen-hw-stub.c
+++ b/stubs/xen-hw-stub.c
@@ -10,10 +10,6 @@
#include "hw/xen/xen.h"
#include "hw/xen/xen-x86.h"
-void xenstore_store_pv_console_info(int i, Chardev *chr)
-{
-}
-
int xen_pci_slot_get_pirq(PCIDevice *pci_dev, int irq_num)
{
return -1;
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 06/10] accel/stubs: drop unused cpu.h include
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (4 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 05/10] stubs/xen-hw-stub: drop xenstore_store_pv_console_info stub Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 07/10] hw/i386/acpi-build: Fix maybe-uninitialized error when ACPI hotplug off Alex Bennée
` (4 subsequent siblings)
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: peter.maydell, Philippe Mathieu-Daudé,
open list:X86 HAXM CPUs, Wenchao Wang, Alex Bennée, Colin Xu
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20201105175153.30489-14-alex.bennee@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
accel/stubs/hax-stub.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/accel/stubs/hax-stub.c b/accel/stubs/hax-stub.c
index 1a9da83185..49077f88e3 100644
--- a/accel/stubs/hax-stub.c
+++ b/accel/stubs/hax-stub.c
@@ -14,7 +14,6 @@
*/
#include "qemu/osdep.h"
-#include "cpu.h"
#include "sysemu/hax.h"
int hax_sync_vcpus(void)
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 07/10] hw/i386/acpi-build: Fix maybe-uninitialized error when ACPI hotplug off
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (5 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 06/10] accel/stubs: drop unused cpu.h include Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-11 11:52 ` Igor Mammedov
2020-11-10 19:23 ` [PATCH v1 08/10] tests/acceptance: Disable Spartan-3A DSP 1800A test Alex Bennée
` (3 subsequent siblings)
10 siblings, 1 reply; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: peter.maydell, Eduardo Habkost, Michael S. Tsirkin,
Philippe Mathieu-Daudé, Paolo Bonzini, Igor Mammedov,
Alex Bennée, Richard Henderson
From: Philippe Mathieu-Daudé <philmd@redhat.com>
GCC 9.3.0 thinks that 'method' can be left uninitialized. This code
is already in the "if (bsel || pcihp_bridge_en)" block statement,
but it isn't smart enough to figure it out.
Restrict the code to be used only in the "if (bsel || pcihp_bridge_en)"
block statement to fix (on Ubuntu):
../hw/i386/acpi-build.c: In function 'build_append_pci_bus_devices':
../hw/i386/acpi-build.c:496:9: error: 'method' may be used uninitialized
in this function [-Werror=maybe-uninitialized]
496 | aml_append(parent_scope, method);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Fixes: df4008c9c59 ("piix4: don't reserve hw resources when hotplug is off globally")
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20201108204535.2319870-4-philmd@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
hw/i386/acpi-build.c | 41 +++++++++++++++++++----------------------
1 file changed, 19 insertions(+), 22 deletions(-)
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
index 4f66642d88..1f5c211245 100644
--- a/hw/i386/acpi-build.c
+++ b/hw/i386/acpi-build.c
@@ -465,34 +465,31 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus,
*/
if (bsel || pcihp_bridge_en) {
method = aml_method("PCNT", 0, AML_NOTSERIALIZED);
- }
- /* If bus supports hotplug select it and notify about local events */
- if (bsel) {
- uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel));
- aml_append(method, aml_store(aml_int(bsel_val), aml_name("BNUM")));
- aml_append(method,
- aml_call2("DVNT", aml_name("PCIU"), aml_int(1) /* Device Check */)
- );
- aml_append(method,
- aml_call2("DVNT", aml_name("PCID"), aml_int(3)/* Eject Request */)
- );
- }
+ /* If bus supports hotplug select it and notify about local events */
+ if (bsel) {
+ uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel));
- /* Notify about child bus events in any case */
- if (pcihp_bridge_en) {
- QLIST_FOREACH(sec, &bus->child, sibling) {
- int32_t devfn = sec->parent_dev->devfn;
+ aml_append(method, aml_store(aml_int(bsel_val), aml_name("BNUM")));
+ aml_append(method, aml_call2("DVNT", aml_name("PCIU"),
+ aml_int(1))); /* Device Check */
+ aml_append(method, aml_call2("DVNT", aml_name("PCID"),
+ aml_int(3))); /* Eject Request */
+ }
- if (pci_bus_is_root(sec) || pci_bus_is_express(sec)) {
- continue;
- }
+ /* Notify about child bus events in any case */
+ if (pcihp_bridge_en) {
+ QLIST_FOREACH(sec, &bus->child, sibling) {
+ int32_t devfn = sec->parent_dev->devfn;
+
+ if (pci_bus_is_root(sec) || pci_bus_is_express(sec)) {
+ continue;
+ }
- aml_append(method, aml_name("^S%.02X.PCNT", devfn));
+ aml_append(method, aml_name("^S%.02X.PCNT", devfn));
+ }
}
- }
- if (bsel || pcihp_bridge_en) {
aml_append(parent_scope, method);
}
qobject_unref(bsel);
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 08/10] tests/acceptance: Disable Spartan-3A DSP 1800A test
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (6 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 07/10] hw/i386/acpi-build: Fix maybe-uninitialized error when ACPI hotplug off Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 09/10] gitlab: move remaining x86 check-tcg targets to gitlab Alex Bennée
` (2 subsequent siblings)
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: peter.maydell, Thomas Huth, Alex Bennée,
Philippe Mathieu-Daudé, Wainer dos Santos Moschetta,
Pavel Dovgalyuk, Cleber Rosa, Paolo Bonzini,
Philippe Mathieu-Daudé
From: Philippe Mathieu-Daudé <f4bug@amsat.org>
This test is regularly failing on CI:
(05/34) tests/acceptance/boot_linux_console.py:BootLinuxConsole.test_microblaze_s3adsp1800:
Linux version 4.11.3 (thuth@thuth.remote.csb) (gcc version 6.4.0 (Buildroot 2018.05.2) ) #5 Tue Dec 11 11:56:23 CET 2018
...
Freeing unused kernel memory: 1444K
This architecture does not have kernel memory protection.
[nothing happens here]
Runner error occurred: Timeout reached (90.91 s)
This is a regression. Until someone figure out the problem,
disable the test to keep CI pipeline useful.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20201109091719.2449141-1-f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/acceptance/boot_linux_console.py | 2 ++
tests/acceptance/replay_kernel.py | 2 ++
2 files changed, 4 insertions(+)
diff --git a/tests/acceptance/boot_linux_console.py b/tests/acceptance/boot_linux_console.py
index 8f433a67f8..cc6ec0f8c1 100644
--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -13,6 +13,7 @@ import lzma
import gzip
import shutil
+from avocado import skip
from avocado import skipUnless
from avocado_qemu import Test
from avocado_qemu import exec_command_and_wait_for_pattern
@@ -1025,6 +1026,7 @@ class BootLinuxConsole(LinuxKernelTest):
tar_hash = 'ac688fd00561a2b6ce1359f9ff6aa2b98c9a570c'
self.do_test_advcal_2018('07', tar_hash, 'sanity-clause.elf')
+ @skip("Test currently broken") # Console stuck as of 5.2-rc1
def test_microblaze_s3adsp1800(self):
"""
:avocado: tags=arch:microblaze
diff --git a/tests/acceptance/replay_kernel.py b/tests/acceptance/replay_kernel.py
index 00c228382b..772633b01d 100644
--- a/tests/acceptance/replay_kernel.py
+++ b/tests/acceptance/replay_kernel.py
@@ -14,6 +14,7 @@ import shutil
import logging
import time
+from avocado import skip
from avocado import skipIf
from avocado import skipUnless
from avocado_qemu import wait_for_console_pattern
@@ -280,6 +281,7 @@ class ReplayKernelNormal(ReplayKernelBase):
file_path = self.fetch_asset(tar_url, asset_hash=tar_hash)
self.do_test_advcal_2018(file_path, 'sanity-clause.elf')
+ @skip("Test currently broken") # Console stuck as of 5.2-rc1
def test_microblaze_s3adsp1800(self):
"""
:avocado: tags=arch:microblaze
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 09/10] gitlab: move remaining x86 check-tcg targets to gitlab
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (7 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 08/10] tests/acceptance: Disable Spartan-3A DSP 1800A test Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 19:23 ` [PATCH v1 10/10] scripts/ci: clean up default args logic a little Alex Bennée
2020-11-10 22:50 ` [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: Fam Zheng, peter.maydell, Thomas Huth,
Philippe Mathieu-Daudé, Wainer dos Santos Moschetta,
Alex Bennée
The GCC check-tcg (user) test in particular was very prone to timing
out on Travis. We only actually need to move the some-softmmu builds
across as we already have coverage for linux-user.
As --enable-debug-tcg does increase the run time somewhat as more
debug is put in let's restrict that to just the plugins build. It's
unlikely that a plugins enabled build is going to hide a sanity
failure in core TCG code so let the plugin builds do the heavy lifting
on checking TCG sanity so the non-plugin builds can run swiftly.
Now the only remaining check-tcg builds on Travis are for the various
non-x86 arches.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.gitlab-ci.yml | 17 +++++++++++++++++
.travis.yml | 26 --------------------------
2 files changed, 17 insertions(+), 26 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 9a8b375188..b406027a55 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -247,6 +247,15 @@ build-user:
CONFIGURE_ARGS: --disable-tools --disable-system
MAKE_CHECK_ARGS: check-tcg
+# Only build the softmmu targets we have check-tcg tests for
+build-some-softmmu:
+ <<: *native_build_job_definition
+ variables:
+ IMAGE: debian-all-test-cross
+ CONFIGURE_ARGS: --disable-tools --enable-debug-tcg
+ TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
+ MAKE_CHECK_ARGS: check-tcg
+
# Run check-tcg against linux-user (with plugins)
# we skip sparc64-linux-user until it has been fixed somewhat
# we skip cris-linux-user as it doesn't use the common run loop
@@ -258,6 +267,14 @@ build-user-plugins:
MAKE_CHECK_ARGS: check-tcg
timeout: 1h 30m
+build-some-softmmu-plugins:
+ <<: *native_build_job_definition
+ variables:
+ IMAGE: debian-all-test-cross
+ CONFIGURE_ARGS: --disable-tools --disable-user --enable-plugins --enable-debug-tcg
+ TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
+ MAKE_CHECK_ARGS: check-tcg
+
build-clang:
<<: *native_build_job_definition
variables:
diff --git a/.travis.yml b/.travis.yml
index a3d78171ca..bac085f800 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -301,32 +301,6 @@ jobs:
- ${SRC_DIR}/configure ${CONFIG} --extra-cflags="-g3 -O0 -fsanitize=thread" || { cat config.log meson-logs/meson-log.txt && exit 1; }
- # Run check-tcg against linux-user
- - name: "GCC check-tcg (user)"
- env:
- - CONFIG="--disable-system --enable-debug-tcg"
- - TEST_BUILD_CMD="make build-tcg"
- - TEST_CMD="make check-tcg"
- - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
-
-
- # Run check-tcg against softmmu targets
- - name: "GCC check-tcg (some-softmmu)"
- env:
- - CONFIG="--enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- - TEST_BUILD_CMD="make build-tcg"
- - TEST_CMD="make check-tcg"
- - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
-
-
- # Run check-tcg against softmmu targets (with plugins)
- - name: "GCC plugins check-tcg (some-softmmu)"
- env:
- - CONFIG="--enable-plugins --enable-debug-tcg --target-list=xtensa-softmmu,arm-softmmu,aarch64-softmmu,alpha-softmmu"
- - TEST_BUILD_CMD="make build-tcg"
- - TEST_CMD="make check-tcg"
- - CACHE_NAME="${TRAVIS_BRANCH}-linux-gcc-debug-tcg"
-
- name: "[aarch64] GCC check-tcg"
arch: arm64
dist: focal
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* [PATCH v1 10/10] scripts/ci: clean up default args logic a little
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (8 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 09/10] gitlab: move remaining x86 check-tcg targets to gitlab Alex Bennée
@ 2020-11-10 19:23 ` Alex Bennée
2020-11-10 22:50 ` [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 19:23 UTC (permalink / raw)
To: qemu-devel
Cc: peter.maydell, Thomas Huth, Alex Bennée,
Wainer dos Santos Moschetta, Philippe Mathieu-Daudé
This allows us to do:
./scripts/ci/gitlab-pipeline-status -w -b HEAD -p 2961854
to check out own pipeline status of a recently pushed branch.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
scripts/ci/gitlab-pipeline-status | 24 +++++++++++++-----------
1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/scripts/ci/gitlab-pipeline-status b/scripts/ci/gitlab-pipeline-status
index bac8233079..78e72f6008 100755
--- a/scripts/ci/gitlab-pipeline-status
+++ b/scripts/ci/gitlab-pipeline-status
@@ -31,7 +31,7 @@ class NoPipelineFound(Exception):
"""Communication is successfull but pipeline is not found."""
-def get_local_branch_commit(branch='staging'):
+def get_local_branch_commit(branch):
"""
Returns the commit sha1 for the *local* branch named "staging"
"""
@@ -126,18 +126,16 @@ def create_parser():
help=('The GitLab project ID. Defaults to the project '
'for https://gitlab.com/qemu-project/qemu, that '
'is, "%(default)s"'))
- try:
- default_commit = get_local_branch_commit()
- commit_required = False
- except ValueError:
- default_commit = ''
- commit_required = True
- parser.add_argument('-c', '--commit', required=commit_required,
- default=default_commit,
+ parser.add_argument('-b', '--branch', type=str, default="staging",
+ help=('Specify the branch to check. '
+ 'Use HEAD for your current branch. '
+ 'Otherwise looks at "%(default)s"'))
+ parser.add_argument('-c', '--commit',
+ default=None,
help=('Look for a pipeline associated with the given '
'commit. If one is not explicitly given, the '
- 'commit associated with the local branch named '
- '"staging" is used. Default: %(default)s'))
+ 'commit associated with the default branch '
+ 'is used.'))
parser.add_argument('--verbose', action='store_true', default=False,
help=('A minimal verbosity level that prints the '
'overall result of the check/wait'))
@@ -149,6 +147,10 @@ def main():
"""
parser = create_parser()
args = parser.parse_args()
+
+ if not args.commit:
+ args.commit = get_local_branch_commit(args.branch)
+
success = False
try:
if args.wait:
--
2.20.1
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins)
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
` (9 preceding siblings ...)
2020-11-10 19:23 ` [PATCH v1 10/10] scripts/ci: clean up default args logic a little Alex Bennée
@ 2020-11-10 22:50 ` Alex Bennée
10 siblings, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2020-11-10 22:50 UTC (permalink / raw)
To: qemu-devel; +Cc: peter.maydell, Alex Bennée
Alex Bennée <alex.bennee@linaro.org> writes:
> Hi,
>
> This collects together a bunch of fixes for 5.2:
Doh, subject did not match body, I of course mean for the current
release candidate.
> - a few resource leak fixes for plugins
> - Xen on arm64 build fixes (from my larger Xen series)
> - a couple of build and CI fixes
> - a tweak to the gitlab status script
<snip>
--
Alex Bennée
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v1 07/10] hw/i386/acpi-build: Fix maybe-uninitialized error when ACPI hotplug off
2020-11-10 19:23 ` [PATCH v1 07/10] hw/i386/acpi-build: Fix maybe-uninitialized error when ACPI hotplug off Alex Bennée
@ 2020-11-11 11:52 ` Igor Mammedov
0 siblings, 0 replies; 13+ messages in thread
From: Igor Mammedov @ 2020-11-11 11:52 UTC (permalink / raw)
To: Alex Bennée
Cc: peter.maydell, Eduardo Habkost, Michael S. Tsirkin, qemu-devel,
Paolo Bonzini, Philippe Mathieu-Daudé, Richard Henderson
On Tue, 10 Nov 2020 19:23:13 +0000
Alex Bennée <alex.bennee@linaro.org> wrote:
> From: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> GCC 9.3.0 thinks that 'method' can be left uninitialized. This code
> is already in the "if (bsel || pcihp_bridge_en)" block statement,
> but it isn't smart enough to figure it out.
>
> Restrict the code to be used only in the "if (bsel || pcihp_bridge_en)"
> block statement to fix (on Ubuntu):
>
> ../hw/i386/acpi-build.c: In function 'build_append_pci_bus_devices':
> ../hw/i386/acpi-build.c:496:9: error: 'method' may be used uninitialized
> in this function [-Werror=maybe-uninitialized]
> 496 | aml_append(parent_scope, method);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
>
> Fixes: df4008c9c59 ("piix4: don't reserve hw resources when hotplug is off globally")
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Message-Id: <20201108204535.2319870-4-philmd@redhat.com>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
> ---
> hw/i386/acpi-build.c | 41 +++++++++++++++++++----------------------
> 1 file changed, 19 insertions(+), 22 deletions(-)
>
> diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
> index 4f66642d88..1f5c211245 100644
> --- a/hw/i386/acpi-build.c
> +++ b/hw/i386/acpi-build.c
> @@ -465,34 +465,31 @@ static void build_append_pci_bus_devices(Aml *parent_scope, PCIBus *bus,
> */
> if (bsel || pcihp_bridge_en) {
> method = aml_method("PCNT", 0, AML_NOTSERIALIZED);
> - }
> - /* If bus supports hotplug select it and notify about local events */
> - if (bsel) {
> - uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel));
>
> - aml_append(method, aml_store(aml_int(bsel_val), aml_name("BNUM")));
> - aml_append(method,
> - aml_call2("DVNT", aml_name("PCIU"), aml_int(1) /* Device Check */)
> - );
> - aml_append(method,
> - aml_call2("DVNT", aml_name("PCID"), aml_int(3)/* Eject Request */)
> - );
> - }
> + /* If bus supports hotplug select it and notify about local events */
> + if (bsel) {
> + uint64_t bsel_val = qnum_get_uint(qobject_to(QNum, bsel));
>
> - /* Notify about child bus events in any case */
> - if (pcihp_bridge_en) {
> - QLIST_FOREACH(sec, &bus->child, sibling) {
> - int32_t devfn = sec->parent_dev->devfn;
> + aml_append(method, aml_store(aml_int(bsel_val), aml_name("BNUM")));
> + aml_append(method, aml_call2("DVNT", aml_name("PCIU"),
> + aml_int(1))); /* Device Check */
> + aml_append(method, aml_call2("DVNT", aml_name("PCID"),
> + aml_int(3))); /* Eject Request */
> + }
>
> - if (pci_bus_is_root(sec) || pci_bus_is_express(sec)) {
> - continue;
> - }
> + /* Notify about child bus events in any case */
> + if (pcihp_bridge_en) {
> + QLIST_FOREACH(sec, &bus->child, sibling) {
> + int32_t devfn = sec->parent_dev->devfn;
> +
> + if (pci_bus_is_root(sec) || pci_bus_is_express(sec)) {
> + continue;
> + }
>
> - aml_append(method, aml_name("^S%.02X.PCNT", devfn));
> + aml_append(method, aml_name("^S%.02X.PCNT", devfn));
> + }
> }
> - }
>
> - if (bsel || pcihp_bridge_en) {
> aml_append(parent_scope, method);
> }
> qobject_unref(bsel);
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2020-11-11 11:54 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-10 19:23 [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
2020-11-10 19:23 ` [PATCH v1 01/10] plugins: Fix resource leak in connect_socket() Alex Bennée
2020-11-10 19:23 ` [PATCH v1 02/10] plugins: Fix two resource leaks in setup_socket() Alex Bennée
2020-11-10 19:23 ` [PATCH v1 03/10] meson.build: fix building of Xen support for aarch64 Alex Bennée
2020-11-10 19:23 ` [PATCH v1 04/10] include/hw/xen.h: drop superfluous struct Alex Bennée
2020-11-10 19:23 ` [PATCH v1 05/10] stubs/xen-hw-stub: drop xenstore_store_pv_console_info stub Alex Bennée
2020-11-10 19:23 ` [PATCH v1 06/10] accel/stubs: drop unused cpu.h include Alex Bennée
2020-11-10 19:23 ` [PATCH v1 07/10] hw/i386/acpi-build: Fix maybe-uninitialized error when ACPI hotplug off Alex Bennée
2020-11-11 11:52 ` Igor Mammedov
2020-11-10 19:23 ` [PATCH v1 08/10] tests/acceptance: Disable Spartan-3A DSP 1800A test Alex Bennée
2020-11-10 19:23 ` [PATCH v1 09/10] gitlab: move remaining x86 check-tcg targets to gitlab Alex Bennée
2020-11-10 19:23 ` [PATCH v1 10/10] scripts/ci: clean up default args logic a little Alex Bennée
2020-11-10 22:50 ` [PATCH v1 for 5.1 00/10] various fixes (CI, Xen, plugins) Alex Bennée
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).