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
README.PACKAGING 0000007270 7.1 KB
_constraints 0000001790 1.75 KB
_multibuild 0000000066 66 Bytes
_service 0000000937 937 Bytes
_servicedata 0000000234 234 Bytes
common.inc 0000006052 5.91 KB
qemu-9.1.0.obscpio 0850211343 811 MB
qemu-linux-user.spec 0000006131 5.99 KB
qemu-rpmlintrc 0000000233 233 Bytes
qemu.changes 0000427570 418 KB
qemu.obsinfo 0000000093 93 Bytes
qemu.spec 0000059077 57.7 KB
Revision 861 (latest revision is 867)
Dario Faggioli's avatar Dario Faggioli (dfaggioli) committed (revision 861)
- Bug and CVE fixes:
  * softmmu/physmem: fix memory leak in dirty_memory_extend()
  * softmmu: Support concurrent bounce buffers (bsc#1230915, CVE-2024-8612)
  * accel/kvm: check for KVM_CAP_READONLY_MEM on VM (bsc#1231519)
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