diff --git a/.cirrus.yml b/.cirrus.yml index d58782ce67..99d118239c 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -15,7 +15,7 @@ freebsd_12_task: - cd build - ../configure --enable-werror || { cat config.log; exit 1; } - gmake -j$(sysctl -n hw.ncpu) - - gmake -j$(sysctl -n hw.ncpu) check + - gmake -j$(sysctl -n hw.ncpu) check V=1 macos_task: osx_instance: @@ -29,7 +29,7 @@ macos_task: --extra-cflags='-Wno-error=deprecated-declarations' || { cat config.log; exit 1; } - gmake -j$(sysctl -n hw.ncpu) - - gmake check + - gmake check V=1 macos_xcode_task: osx_instance: @@ -43,67 +43,88 @@ macos_xcode_task: - ../configure --extra-cflags='-Wno-error=deprecated-declarations' --enable-werror --cc=clang || { cat config.log; exit 1; } - gmake -j$(sysctl -n hw.ncpu) - - gmake check + - gmake check V=1 windows_msys2_task: + timeout_in: 90m windows_container: - image: cirrusci/windowsservercore:cmake + image: cirrusci/windowsservercore:2019 os_version: 2019 cpu: 8 memory: 8G env: + CIRRUS_SHELL: powershell MSYS: winsymlinks:nativestrict MSYSTEM: MINGW64 CHERE_INVOKING: 1 - printenv_script: - - C:\tools\msys64\usr\bin\bash.exe -lc 'printenv' + setup_script: + - choco install -y --no-progress 7zip + - Write-Output $env:PATH + msys2_cache: + folder: C:\tools\archive + reupload_on_changes: false + fingerprint_script: cat .cirrus.yml + populate_script: + - | + md C:\tools + md C:\tools\archive + $start_time = Get-Date + cd C:\tools + bitsadmin /transfer msys_download /dynamic /download /priority FOREGROUND https://github.com/msys2/msys2-installer/releases/download/2020-09-03/msys2-base-x86_64-20200903.sfx.exe C:\tools\base.exe + Write-Output "Download time taken: $((Get-Date).Subtract($start_time).Seconds) second(s)" + C:\tools\base.exe -y + ((Get-Content -path C:\tools\msys64\etc\\post-install\\07-pacman-key.post -Raw) -replace '--refresh-keys', '--version') | Set-Content -Path C:\tools\msys64\etc\\post-install\\07-pacman-key.post + C:\tools\msys64\usr\bin\bash.exe -lc "sed -i 's/^CheckSpace/#CheckSpace/g' /etc/pacman.conf" + C:\tools\msys64\usr\bin\bash.exe -lc "export" + C:\tools\msys64\usr\bin\bash.exe -lc "grep -rl 'repo.msys2.org/' /etc/pacman.d/mirrorlist.* | xargs sed -i 's/repo.msys2.org\//mirrors.tuna.tsinghua.edu.cn\/msys2\//g'" + C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Sy + echo Y | C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Suu --overwrite=* + taskkill /F /FI "MODULES eq msys-2.0.dll" + tasklist + C:\tools\msys64\usr\bin\bash.exe -lc "mv -f /etc/pacman.conf.pacnew /etc/pacman.conf || true" + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Suu --overwrite=*" + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed \ + diffutils git grep make pkg-config sed \ + mingw-w64-x86_64-python \ + mingw-w64-x86_64-python-setuptools \ + mingw-w64-x86_64-toolchain \ + mingw-w64-x86_64-SDL2 \ + mingw-w64-x86_64-SDL2_image \ + mingw-w64-x86_64-gtk3 \ + mingw-w64-x86_64-glib2 \ + mingw-w64-x86_64-ninja \ + mingw-w64-x86_64-jemalloc \ + mingw-w64-x86_64-lzo2 \ + mingw-w64-x86_64-zstd \ + mingw-w64-x86_64-libjpeg-turbo \ + mingw-w64-x86_64-pixman \ + mingw-w64-x86_64-libgcrypt \ + mingw-w64-x86_64-libpng \ + mingw-w64-x86_64-libssh \ + mingw-w64-x86_64-libxml2 \ + mingw-w64-x86_64-snappy \ + mingw-w64-x86_64-libusb \ + mingw-w64-x86_64-usbredir \ + mingw-w64-x86_64-libtasn1 \ + mingw-w64-x86_64-nettle \ + mingw-w64-x86_64-cyrus-sasl \ + mingw-w64-x86_64-curl \ + mingw-w64-x86_64-gnutls \ + " + C:\tools\msys64\usr\bin\bash.exe -lc "rm -rf /var/cache/pacman/pkg/*" + cd C:\tools\msys64 + echo "Start archive" + cmd /C "7z a -ttar . -so | 7z a -txz -simsys2-x86_64.tar C:\tools\archive\msys2-x86_64.tar.xz" install_script: - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && - curl -O http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && - curl -O http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz.sig" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && - pacman -U --noconfirm msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz" - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Sy" - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed - bash pacman pacman-mirrors msys2-runtime" - - taskkill /F /IM gpg-agent.exe - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Su" - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed - base-devel - git - mingw-w64-x86_64-python - mingw-w64-x86_64-python-setuptools - mingw-w64-x86_64-toolchain - mingw-w64-x86_64-capstone - mingw-w64-x86_64-SDL2 - mingw-w64-x86_64-SDL2_image - mingw-w64-x86_64-gtk3 - mingw-w64-x86_64-glib2 - mingw-w64-x86_64-ninja - mingw-w64-x86_64-make - mingw-w64-x86_64-lzo2 - mingw-w64-x86_64-zstd - mingw-w64-x86_64-libjpeg-turbo - mingw-w64-x86_64-pixman - mingw-w64-x86_64-libgcrypt - mingw-w64-x86_64-libpng - mingw-w64-x86_64-libssh - mingw-w64-x86_64-libxml2 - mingw-w64-x86_64-snappy - mingw-w64-x86_64-libusb - mingw-w64-x86_64-usbredir - mingw-w64-x86_64-libtasn1 - mingw-w64-x86_64-nettle - mingw-w64-x86_64-cyrus-sasl - mingw-w64-x86_64-curl - mingw-w64-x86_64-gnutls - mingw-w64-x86_64-zstd" + - | + cd C:\tools + cmd /C "7z x C:\tools\archive\msys2-x86_64.tar.xz -so | 7z x -aoa -simsys2-x86_64.tar -ttar -omsys64" + C:\tools\msys64\usr\bin\bash.exe -lc "export" + script: - C:\tools\msys64\usr\bin\bash.exe -lc "mkdir build" - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && ../configure - --python=python3 --ninja=ninja - --target-list-exclude=i386-softmmu,arm-softmmu,ppc-softmmu,mips-softmmu" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j$NUMBER_OF_PROCESSORS" + --python=python3 --ninja=ninja" + - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j8" test_script: - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make V=1 check" diff --git a/.mailmap b/.mailmap index b914c9e290..663819fb01 100644 --- a/.mailmap +++ b/.mailmap @@ -85,6 +85,7 @@ Christophe Lyon Collin L. Walling Daniel P. Berrangé Eduardo Otubo +Erik Smit Fabrice Desclaux Fernando Luis Vázquez Cao Fernando Luis Vázquez Cao @@ -142,6 +143,7 @@ Roger Pau Monné Shin'ichiro Kawasaki Shin'ichiro Kawasaki Sochin Jiang +Stefan Berger Takashi Yoshii Thomas Huth Thomas Knych diff --git a/configure b/configure index 28df227db5..b553288c5e 100755 --- a/configure +++ b/configure @@ -7209,6 +7209,7 @@ NINJA=${ninja:-$PWD/ninjatool} $meson setup \ -Dwerror=$(if test "$werror" = yes; then echo true; else echo false; fi) \ -Dstrip=$(if test "$strip_opt" = yes; then echo true; else echo false; fi) \ -Db_pie=$(if test "$pie" = yes; then echo true; else echo false; fi) \ + -Db_staticpic=$(if test "$pie" = yes; then echo true; else echo false; fi) \ -Db_coverage=$(if test "$gcov" = yes; then echo true; else echo false; fi) \ -Dmalloc=$malloc -Dmalloc_trim=$malloc_trim -Dsparse=$sparse \ -Dkvm=$kvm -Dhax=$hax -Dwhpx=$whpx -Dhvf=$hvf \ diff --git a/contrib/gitdm/domain-map b/contrib/gitdm/domain-map index dd79147c76..0074da618f 100644 --- a/contrib/gitdm/domain-map +++ b/contrib/gitdm/domain-map @@ -5,10 +5,13 @@ # amd.com AMD +baidu.com Baidu +bytedance.com ByteDance cmss.chinamobile.com China Mobile citrix.com Citrix -greensocs.com GreenSocs fujitsu.com Fujitsu +google.com Google +greensocs.com GreenSocs huawei.com Huawei ibm.com IBM igalia.com Igalia @@ -16,13 +19,18 @@ intel.com Intel linaro.org Linaro microsoft.com Microsoft nokia.com Nokia +nuviainc.com NUVIA oracle.com Oracle proxmox.com Proxmox +quicinc.com Qualcomm Innovation Center redhat.com Red Hat rt-rk.com RT-RK siemens.com Siemens sifive.com SiFive +suse.com SUSE suse.de SUSE virtuozzo.com Virtuozzo wdc.com Western Digital xilinx.com Xilinx +yadro.com YADRO +yandex-team.ru Yandex diff --git a/contrib/gitdm/group-map-academics b/contrib/gitdm/group-map-academics index 08f9d81d13..bf3c894821 100644 --- a/contrib/gitdm/group-map-academics +++ b/contrib/gitdm/group-map-academics @@ -12,3 +12,7 @@ ispras.ru # Columbia University cs.columbia.edu cota@braap.org + +uni-paderborn.de +edu +edu.cn diff --git a/contrib/gitdm/group-map-individuals b/contrib/gitdm/group-map-individuals index cf8a2ce367..641169fa63 100644 --- a/contrib/gitdm/group-map-individuals +++ b/contrib/gitdm/group-map-individuals @@ -16,3 +16,10 @@ aurelien@aurel32.net balaton@eik.bme.hu e.emanuelegiuseppe@gmail.com andrew.smirnov@gmail.com +sw@weilnetz.de +deller@gmx.de +fthain@telegraphics.com.au +vr_qemu@t-online.de +nieklinnenbank@gmail.com +devnexen@gmail.com +pauldzim@gmail.com diff --git a/contrib/gitdm/group-map-redhat b/contrib/gitdm/group-map-redhat index d15db2d35e..02507b7b53 100644 --- a/contrib/gitdm/group-map-redhat +++ b/contrib/gitdm/group-map-redhat @@ -6,3 +6,4 @@ david@gibson.dropbear.id.au laurent@vivier.eu pjp@fedoraproject.org armbru@pond.sub.org +nirsof@gmail.com diff --git a/contrib/plugins/hotblocks.c b/contrib/plugins/hotblocks.c index 3942a2ca54..37435a3fc7 100644 --- a/contrib/plugins/hotblocks.c +++ b/contrib/plugins/hotblocks.c @@ -102,7 +102,7 @@ static void vcpu_tb_trans(qemu_plugin_id_t id, struct qemu_plugin_tb *tb) { ExecCount *cnt; uint64_t pc = qemu_plugin_tb_vaddr(tb); - unsigned long insns = qemu_plugin_tb_n_insns(tb); + size_t insns = qemu_plugin_tb_n_insns(tb); uint64_t hash = pc ^ insns; g_mutex_lock(&lock); diff --git a/hw/ide/core.c b/hw/ide/core.c index 0e32abd779..693b352d5e 100644 --- a/hw/ide/core.c +++ b/hw/ide/core.c @@ -2289,8 +2289,8 @@ void ide_ctrl_write(void *opaque, uint32_t addr, uint32_t val) s = &bus->ifs[i]; s->status |= BUSY_STAT; } - aio_bh_schedule_oneshot(qemu_get_aio_context(), - ide_bus_perform_srst, bus); + replay_bh_schedule_oneshot_event(qemu_get_aio_context(), + ide_bus_perform_srst, bus); } bus->cmd = val; diff --git a/hw/misc/mips_cpc.c b/hw/misc/mips_cpc.c index 2f7b2c9592..7c11fb3d44 100644 --- a/hw/misc/mips_cpc.c +++ b/hw/misc/mips_cpc.c @@ -38,6 +38,7 @@ static void mips_cpu_reset_async_work(CPUState *cs, run_on_cpu_data data) MIPSCPCState *cpc = (MIPSCPCState *) data.host_ptr; cpu_reset(cs); + cs->halted = 0; cpc->vp_running |= 1ULL << cs->cpu_index; } diff --git a/plugins/loader.c b/plugins/loader.c index 685d334e1a..8ac5dbc20f 100644 --- a/plugins/loader.c +++ b/plugins/loader.c @@ -235,6 +235,7 @@ static int plugin_load(struct qemu_plugin_desc *desc, const qemu_info_t *info) return rc; err_symbol: + g_module_close(ctx->handle); err_dlopen: qemu_vfree(ctx); return 1; diff --git a/tests/acceptance/machine_rx_gdbsim.py b/tests/acceptance/machine_rx_gdbsim.py index 0c72506028..32b737b6d8 100644 --- a/tests/acceptance/machine_rx_gdbsim.py +++ b/tests/acceptance/machine_rx_gdbsim.py @@ -22,6 +22,7 @@ class RxGdbSimMachine(Test): timeout = 30 KERNEL_COMMON_COMMAND_LINE = 'printk.time=0 ' + @skipIf(os.getenv('GITLAB_CI'), 'Running on GitLab') def test_uboot(self): """ U-Boot and checks that the console is operational. diff --git a/tests/docker/dockerfiles/centos8.docker b/tests/docker/dockerfiles/centos8.docker index f435616d6a..0fc2697491 100644 --- a/tests/docker/dockerfiles/centos8.docker +++ b/tests/docker/dockerfiles/centos8.docker @@ -8,6 +8,7 @@ ENV PACKAGES \ dbus-daemon \ gcc \ gcc-c++ \ + genisoimage \ gettext \ git \ glib2-devel \ diff --git a/tests/docker/dockerfiles/debian-amd64.docker b/tests/docker/dockerfiles/debian-amd64.docker index d2500dcff1..314c6bae83 100644 --- a/tests/docker/dockerfiles/debian-amd64.docker +++ b/tests/docker/dockerfiles/debian-amd64.docker @@ -14,6 +14,7 @@ RUN apt update && \ RUN apt update && \ DEBIAN_FRONTEND=noninteractive eatmydata \ apt install -y --no-install-recommends \ + genisoimage \ libbz2-dev \ liblzo2-dev \ libgcrypt20-dev \ diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker index ec783418c8..85c975543d 100644 --- a/tests/docker/dockerfiles/fedora.docker +++ b/tests/docker/dockerfiles/fedora.docker @@ -15,6 +15,7 @@ ENV PACKAGES \ findutils \ gcc \ gcc-c++ \ + genisoimage \ gettext \ git \ glib2-devel \ diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker index cafe8443fb..f4b9556b9e 100644 --- a/tests/docker/dockerfiles/ubuntu2004.docker +++ b/tests/docker/dockerfiles/ubuntu2004.docker @@ -3,6 +3,7 @@ ENV PACKAGES flex bison \ ccache \ clang-10\ gcc \ + genisoimage \ gettext \ git \ glusterfs-common \ diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c index e4cc7fdd6e..de09bdde4e 100644 --- a/tests/plugin/bb.c +++ b/tests/plugin/bb.c @@ -72,7 +72,7 @@ static void vcpu_tb_exec(unsigned int cpu_index, void *udata) CPUCount *count = max_cpus ? g_ptr_array_index(counts, cpu_index) : &inline_count; - unsigned long n_insns = (unsigned long)udata; + uintptr_t n_insns = (uintptr_t)udata; g_mutex_lock(&count->lock); count->insn_count += n_insns; count->bb_count++; @@ -81,7 +81,7 @@ static void vcpu_tb_exec(unsigned int cpu_index, void *udata) static void vcpu_tb_trans(qemu_plugin_id_t id, struct qemu_plugin_tb *tb) { - unsigned long n_insns = qemu_plugin_tb_n_insns(tb); + size_t n_insns = qemu_plugin_tb_n_insns(tb); if (do_inline) { qemu_plugin_register_vcpu_tb_exec_inline(tb, QEMU_PLUGIN_INLINE_ADD_U64,