QEMU

Edit Package qemu
https://www.qemu.org/documentation/

QEMU is a generic and open source machine emulator and virtualizer.

QEMU can be used in several different ways. The most common is for System Emulation, where it provides a virtual model of an entire machine (CPU, memory and emulated devices) to run a guest OS. In this mode the CPU may be fully emulated, or it may work with a hypervisor such as KVM or Xen to allow the guest to run directly on the host CPU.

Note that this package is produced using a Git based workflow. Please refer to README.PACKAGING before making modifications.

Refresh
Refresh
Source Files
Filename Size Changed
50-seabios-256k.json 0000000664 664 Bytes
60-seabios-128k.json 0000000909 909 Bytes
80-kvm.rules 0000000040 40 Bytes
80-qemu-ga.rules 0000000128 128 Bytes
AIO-Reduce-number-of-threads-for-32bit-h.patch 0000001329 1.3 KB
Make-char-muxer-more-robust-wrt-small-FI.patch 0000004157 4.06 KB
Make-installed-scripts-explicitly-python.patch 0000001120 1.09 KB
Makefile-Don-t-check-pc-bios-as-pre-requ.patch 0000001102 1.08 KB
Makefile-define-endianess-for-cross-buil.patch 0000001126 1.1 KB
PPC-KVM-Disable-mmu-notifier-check.patch 0000001083 1.06 KB
README.PACKAGING 0000004901 4.79 KB
Raise-soft-address-space-limit-to-hard-l.patch 0000001548 1.51 KB
Revert-qht-constify-qht_statistics_init.patch 0000002060 2.01 KB
Revert-roms-efirom-tests-uefi-test-tools.patch 0000001507 1.47 KB
XXX-dont-dump-core-on-sigabort.patch 0000001176 1.15 KB
_constraints 0000001890 1.85 KB
_multibuild 0000000094 94 Bytes
acpi-validate-hotplug-selector-on-access.patch 0000001448 1.41 KB
acpi_piix4-Fix-migration-from-SLE11-SP2.patch 0000001026 1 KB
ath5k-Add-missing-AR5K_EEPROM_READ-in-at.patch 0000001266 1.24 KB
block-backend-Retain-permissions-after-m.patch 0000002809 2.74 KB
bridge.conf 0000000441 441 Bytes
brotli-fix-actual-variable-array-paramet.patch 0000002255 2.2 KB
build-be-explicit-about-mx86-used-note-n.patch 0000001194 1.17 KB
bundles.tar.xz 0000076160 74.4 KB
config.sh 0000004268 4.17 KB
configure-only-populate-roms-if-softmmu.patch 0000000885 885 Bytes
configure-remove-pkgversion-from-CONFIG_.patch 0000001498 1.46 KB
doc-add-our-support-doc-to-the-main-proj.patch 0000000614 614 Bytes
enable-cross-compilation-on-ARM.patch 0000000694 694 Bytes
help-compiler-out-by-initializing-array.patch 0000001169 1.14 KB
hw-intc-exynos4210_gic-provide-more-room.patch 0000003580 3.5 KB
hw-smbios-handle-both-file-formats-regar.patch 0000004194 4.1 KB
i8254-Fix-migration-from-SLE11-SP2.patch 0000001466 1.43 KB
increase-x86_64-physical-bits-to-42.patch 0000001074 1.05 KB
iotest-065-explicit-compression-type.patch 0000003805 3.72 KB
iotest-214-explicit-compression-type.patch 0000001390 1.36 KB
iotest-302-use-img_info_log-helper.patch 0000002923 2.85 KB
iotest-303-explicit-compression-type.patch 0000003386 3.31 KB
iotest-39-use-_qcow2_dump_header.patch 0000001199 1.17 KB
iotests-60-more-accurate-set-dirty-bit-i.patch 0000001356 1.32 KB
iotests-MRCE-Write-data-to-source.patch 0000002908 2.84 KB
iotests-bash-tests-filter-compression-ty.patch 0000010199 9.96 KB
iotests-common.rc-introduce-_qcow2_dump_.patch 0000001181 1.15 KB
iotests-declare-lack-of-support-for-comp.patch 0000004230 4.13 KB
iotests-drop-qemu_img_verbose-helper.patch 0000004521 4.42 KB
iotests-massive-use-_qcow2_dump_header.patch 0000015882 15.5 KB
iotests-specify-some-unsupported_imgopts.patch 0000009451 9.23 KB
iotests.py-filter-out-successful-output-.patch 0000030286 29.6 KB
iotests.py-img_info_log-rename-imgopts-a.patch 0000003039 2.97 KB
iotests.py-implement-unsupported_imgopts.patch 0000002812 2.75 KB
iotests.py-qemu_img-create-support-IMGOP.patch 0000003418 3.34 KB
iotests.py-rewrite-default-luks-support-.patch 0000003166 3.09 KB
ipxe-Makefile-fix-issues-of-build-reprod.patch 0000002043 2 KB
ksm.service 0000000314 314 Bytes
kvm.conf 0000000036 36 Bytes
linux-user-Fake-proc-cpuinfo.patch 0000002094 2.04 KB
linux-user-add-binfmt-wrapper-for-argv-0.patch 0000003182 3.11 KB
linux-user-binfmt-support-host-binaries.patch 0000001649 1.61 KB
linux-user-lseek-explicitly-cast-non-set.patch 0000001318 1.29 KB
linux-user-use-target_ulong.patch 0000003775 3.69 KB
meson-build-all-modules-by-default.patch 0000001965 1.92 KB
meson-install-ivshmem-client-and-ivshmem.patch 0000001307 1.28 KB
modules-quick-fix-a-fundamental-error-in.patch 0000002860 2.79 KB
pc-bios-s390-ccw-net-avoid-warning-about.patch 0000001061 1.04 KB
pkg-split.txt 0000000423 423 Bytes
qboot-add-cross.ini-file-to-handle-aarch.patch 0000000607 607 Bytes
qcow2-simple-case-support-for-downgradin.patch 0000003682 3.6 KB
qemu-6.2.0.tar.xz 0115667324 110 MB
qemu-6.2.0.tar.xz.sig 0000000310 310 Bytes
qemu-binfmt-conf-Modify-default-path.patch 0000000855 855 Bytes
qemu-binfmt-conf-use-qemu-ARCH-binfmt.patch 0000001176 1.15 KB
qemu-binfmt-conf.sh-allow-overriding-SUS.patch 0000002772 2.71 KB
qemu-binfmt-conf.sh-should-use-F-as-shor.patch 0000001100 1.07 KB
qemu-bridge-helper-reduce-security-profi.patch 0000002660 2.6 KB
qemu-cvs-gettimeofday.patch 0000000844 844 Bytes
qemu-cvs-ioctl_debug.patch 0000001841 1.8 KB
qemu-cvs-ioctl_nodirection.patch 0000001729 1.69 KB
qemu-guest-agent.service 0000000398 398 Bytes
qemu-ifup 0000000678 678 Bytes
qemu-kvm.1.gz 0000000047 47 Bytes
qemu-rpmlintrc 0000000203 203 Bytes
qemu-supportconfig 0000002114 2.06 KB
qemu.changes 0000350180 342 KB
qemu.keyring 0000031860 31.1 KB
qemu.spec 0000082599 80.7 KB
qemu.spec.in 0000075639 73.9 KB
qht-Revert-some-constification-in-qht.c.patch 0000003149 3.08 KB
qom-handle-case-of-chardev-spice-module-.patch 0000001103 1.08 KB
roms-Makefile-add-cross-file-to-qboot-me.patch 0000000929 929 Bytes
roms-Makefile-pass-a-packaging-timestamp.patch 0000002494 2.44 KB
roms-change-cross-compiler-naming-to-be-.patch 0000000912 912 Bytes
roms-sgabios-Fix-csum8-to-be-built-by-ho.patch 0000000641 641 Bytes
scsi-generic-replace-logical-block-count.patch 0000003751 3.66 KB
seabios-switch-to-python3-as-needed.patch 0000006615 6.46 KB
seabios-use-python2-explicitly-as-needed.patch 0000001882 1.84 KB
sgabios-Makefile-fix-issues-of-build-rep.patch 0000001141 1.11 KB
stub-out-the-SAN-req-s-in-int13.patch 0000003124 3.05 KB
supported.arm.txt 0000033900 33.1 KB
supported.ppc.txt 0000000160 160 Bytes
supported.s390.txt 0000029093 28.4 KB
supported.x86.txt 0000033237 32.5 KB
test-add-mapping-from-arch-of-i686-to-qe.patch 0000000926 926 Bytes
tests-Fix-block-tests-to-be-compatible-w.patch 0000004076 3.98 KB
tests-change-error-message-in-test-162.patch 0000001104 1.08 KB
tests-qemu-iotests-Fix-051-for-binaries-.patch 0000001141 1.11 KB
tests-qemu-iotests-Triple-timeout-of-i-o.patch 0000001062 1.04 KB
update_git.sh 0000044652 43.6 KB
usb-Help-compiler-out-to-avoid-a-warning.patch 0000001849 1.81 KB
virtiofsd-Drop-membership-of-all-supplem.patch 0000003157 3.08 KB
xen-add-block-resize-support-for-xen-dis.patch 0000001124 1.1 KB
xen-ignore-live-parameter-from-xen-save-.patch 0000001750 1.71 KB
xen_disk-Add-suse-specific-flush-disable.patch 0000001976 1.93 KB
Revision 691 (latest revision is 868)
Dario Faggioli's avatar Dario Faggioli (dfaggioli) accepted request 959502 from Dario Faggioli's avatar Dario Faggioli (dfaggioli) (revision 691)
- Build PPC firmwares from sources on non-PPC builds as well (bsc#1193545)
- Build RiscV firmwares on non-RiscV builds as well
- While there, refactor (and simplify!) the firmware building logic and code
  * Patches added:
     Makefile-define-endianess-for-cross-buil.patch
- Include vmxcap in the qemu-tools package (is being very useful for debugging bsc#1193364)
- The qemu package should require qemu-x86, qemu-arm, etc, as there's no point installing it without _any_ of them. Additionally, right now, the user does not get a working qemu, if recommended packages are disabled (e.g., on MicroOS or SLE Micro). bsc#1196087
- Give clearer instructions on how to modify the package patches from the output of update_git.sh (docs change only, no functional change)
- qemu,kvm: potential privilege escalation via virtiofsd (bsc#1195161, CVE-2022-0358)
  * Patches added:
     virtiofsd-Drop-membership-of-all-supplem.patch
Comments 5

Eric Schirra's avatar

qemu-kvm ist missing now for all arch!

And this wrong:

Pacakges we OBSOLETE (and CONFLICT)

Obsoletes: kvm <= %{version} Obsoletes: qemu-kvm <= %{version} Obsoletes: qemu-sgabios <= 8

Should be <, not <=


Dario Faggioli's avatar

I'm sorry, maybe I still missing something about Obsoletes & Friends enough... Can you help me understand why qemu-kvm would be missing for all arches? In fact, I'm not only Obsoleting it, I'm also Providing it, isn't that fine?

FWIW, I've done a few tests with this repository enabled, and it seemed to work:

$ zypper lr Repository priorities in effect: > (See 'zypper lr -P' for details) 90 (raised priority) : 1 repository 99 (default priority) : 4 repositories

| Alias | Name | Enabled | GPG Check | Refresh --+----------------+----------------------------------------+---------+-----------+-------- 1 | Virtualization | Virtualization (openSUSE_Tumbleweed) | Yes | (r ) Yes | Yes 2 | repo-debug | openSUSE-Tumbleweed-Debug | No | ---- | ---- 3 | repo-non-oss | openSUSE-Tumbleweed-Non-Oss | Yes | (r ) Yes | Yes 4 | repo-openh264 | Open H.264 Codec (openSUSE Tumbleweed) | Yes | (r ) Yes | Yes 5 | repo-oss | openSUSE-Tumbleweed-Oss | Yes | (r ) Yes | Yes 6 | repo-source | openSUSE-Tumbleweed-Source | No | ---- | ---- 7 | repo-update | openSUSE-Tumbleweed-Update | Yes | (r ) Yes | Yes

$ zypper in --from 1 qemu-kvm Loading repository data... Reading installed packages... 'qemu-kvm' not found in package names. Trying capabilities. Resolving package dependencies...

The following 37 NEW packages are going to be installed: acl canokey-qemu kernel-devel kernel-macros libaio1 libcapstone4 libefa1 libfdt1 libibverbs libibverbs1 libjpeg8 liblzo2-2 libmana1 libmlx4-1 libmlx5-1 libndctl6 libnuma1 libpixman-1-0 libpmem1 libpng16-16 librdmacm1 libslirp0 libsnappy1 liburing2 libvdeplug3 libxdp1 libyajl2 qemu qemu-accel-tcg-x86 qemu-ipxe qemu-ovmf-x86_64 qemu-seabios qemu-vgabios qemu-x86 rdma-core system-user-qemu xen-libs

I.e., as you can see, no qemu-kvm package is being installed:

$ rpm -qa|grep qemu-kvm $

And:

$ zypper in --from 1 qemu-kvm Loading repository data... Reading installed packages... 'qemu-kvm' not found in package names. Trying capabilities. 'qemu' providing 'qemu-kvm' is already installed. Resolving package dependencies... Nothing to do. $ zypper se --provides qemu-kvm Loading repository data... Reading installed packages...

S | Name | Summary | Type ---+----------------------+----------------------------------------------------+----------- | os-autoinst-qemu-kvm | Convenience package providing os-autoinst+qemu-kvm | package | qemu | Machine emulator and virtualizer | srcpackage i+ | qemu | Machine emulator and virtualizer | package

Furthermore, if I have the actual qemu-kvm package installed, with <= it is automatically removed, which is what I want... So things look good to me. What am I missing?


Eric Schirra's avatar

First a short answer. An offered version (=) cannot be obsolete (<=) at the same time.

And why should qemu-kvm be removed? Doesn't the package require other packages to build or install?


Dario Faggioli's avatar

Mmm... I guess I can try with "Obsoletes: qemu-kvm < %{version}-%{release}

But, yes, the actual qemu-kvm package must be removed, because now the qemu pacakge Obsoletes it, by providing everything that it was providing before (i.e., one symlink).

I don't understand what you mean with "Doesn't the package require other packages to build or install?"


Dario Faggioli's avatar

Ok, I've now tested Obsoletes: qemu-kvm < %{version}-%{release}, and no, it does not do what I want and need, while Obsoletes: qemu-kvm = %{version} does. And the SR has been accepted already, so I'm sticking to that

openSUSE Build Service is sponsored by