Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 2006363

Summary: Downgrade from qemu-kvm-6.0 to qemu-kvm 4 fails
Product: Red Hat Enterprise Linux 8 Reporter: Danilo de Paula <ddepaula>
Component: qemu-kvmAssignee: Virtualization Maintenance <virt-maint>
qemu-kvm sub component: General QA Contact: jingzhao <jinzhao>
Status: CLOSED WONTFIX Docs Contact:
Severity: unspecified    
Priority: unspecified CC: berrange, coli, juzhang, virt-maint, yfu
Version: 8.6Flags: pm-rhel: mirror+
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2006388 (view as bug list) Environment:
Last Closed: 2021-09-27 21:17:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2006388    

Description Danilo de Paula 2021-09-21 14:28:04 UTC
When downgrading from qemu-kvm-6 (or even 5) to qemu-kvm 4, the downgrade process fails with conflicts between files from qemu-kvm-common-4 and qemu-kvm-docs-6

This is an hypothesis, but I believe it happens because qemu-kvm-docs-6 doesn't get uninstalled when qemu-kvm-common-4 gets installed, raising a conflict.

Here's a output of the issue:
 -------------------------------------------------------------------------
|                                                                         |
| TEST                                                                    |
| ====                                                                    |
|                                                                         |
|   TYPE:        update                                                   |
|   NEVRA:       qemu-kvm-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64 |
|   SELINUX:     Enforcing                                                |
|   YUM HISTORY: 564                                                      |
|                                                                         |
-------------------------------------------------------------------------
 ----------------------------------------------------------------------------------
|                                                                                  |
|   Prepare for updating qemu-kvm-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64  |
|                                                                                  |
----------------------------------------------------------------------------------
Found available older package: qemu-kvm-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64
The oldest installed nevra: qemu-kvm-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Last metadata expiration check: 1:02:18 ago on Fri 17 Sep 2021 04:11:07 PM EDT.
Dependencies resolved.
===================================================================================================
 Package                  Arch    Version                                   Repository         Size
===================================================================================================
Installing dependencies:
 libcacard                x86_64  3:2.7.0-2.el8_1                           rhel-8-appstream   52 k
 libibumad                x86_64  35.0-1.el8                                rhel-8-base        33 k
Removing dependent packages:
 qemu-kvm-hw-usbredir     x86_64  15:6.1.0-1.module+el8.6.0+12648+6ede71a5  @brew-1733412      66 k
 qemu-kvm-ui-opengl       x86_64  15:6.1.0-1.module+el8.6.0+12648+6ede71a5  @brew-1733412      41 k
 qemu-kvm-ui-spice        x86_64  15:6.1.0-1.module+el8.6.0+12648+6ede71a5  @brew-1733412     200 k
Downgrading:
 qemu-img                 x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  1.1 M
 qemu-kvm                 x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  126 k
 qemu-kvm-block-curl      x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  137 k
 qemu-kvm-block-gluster   x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  139 k
 qemu-kvm-block-iscsi     x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  144 k
 qemu-kvm-block-rbd       x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  138 k
 qemu-kvm-block-ssh       x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  139 k
 qemu-kvm-common          x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  1.2 M
 qemu-kvm-core            x86_64  15:4.2.0-58.module+el8.5.0+12272+74ace547 rhel-8-appstream  3.5 M

Transaction Summary
===================================================================================================
Install    2 Packages
Remove     3 Packages
Downgrade  9 Packages

Total download size: 6.6 M
Downloading Packages:
(1/11): qemu-kvm-4.2.0-58.module+el8.5.0+12272+ 1.3 MB/s | 126 kB     00:00    
(2/11): qemu-kvm-block-curl-4.2.0-58.module+el8 1.4 MB/s | 137 kB     00:00    
(3/11): qemu-kvm-block-iscsi-4.2.0-58.module+el 1.9 MB/s | 144 kB     00:00    
(4/11): qemu-kvm-block-gluster-4.2.0-58.module+ 1.6 MB/s | 139 kB     00:00    
(5/11): qemu-kvm-block-rbd-4.2.0-58.module+el8. 2.4 MB/s | 138 kB     00:00    
(6/11): qemu-kvm-block-ssh-4.2.0-58.module+el8. 1.9 MB/s | 139 kB     00:00    
(7/11): qemu-img-4.2.0-58.module+el8.5.0+12272+ 3.6 MB/s | 1.1 MB     00:00    
(8/11): libibumad-35.0-1.el8.x86_64.rpm         746 kB/s |  33 kB     00:00    
(9/11): qemu-kvm-common-4.2.0-58.module+el8.5.0 7.9 MB/s | 1.2 MB     00:00    
(10/11): libcacard-2.7.0-2.el8_1.x86_64.rpm     913 kB/s |  52 kB     00:00    
(11/11): qemu-kvm-core-4.2.0-58.module+el8.5.0+ 7.0 MB/s | 3.5 MB     00:00    
--------------------------------------------------------------------------------
Total                                           8.8 MB/s | 6.6 MB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'yum clean packages'.
Error: Transaction test error:
  file /usr/share/doc/qemu-kvm/README.rst from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/interop/bitmaps.html from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/interop/index.html from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/interop/live-block-operations.html from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/interop/pr-helper.html from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/interop/qemu-ga.html from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/interop/vhost-user-gpu.html from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/interop/vhost-user.html from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64
  file /usr/share/doc/qemu-kvm/qmp-spec.txt from install of qemu-kvm-common-15:4.2.0-58.module+el8.5.0+12272+74ace547.x86_64 conflicts with file from package qemu-kvm-docs-15:6.1.0-1.module+el8.6.0+12648+6ede71a5.x86_64


Downgrading from qemu-kvm-6 to qemu-kvm-4 shouldn't break.

Comment 1 Daniel Berrangé 2021-09-22 08:35:24 UTC
(In reply to Danilo Cesar Lemes de Paula from comment #0)
> When downgrading from qemu-kvm-6 (or even 5) to qemu-kvm 4, the downgrade
> process fails with conflicts between files from qemu-kvm-common-4 and
> qemu-kvm-docs-6
> 
> This is an hypothesis, but I believe it happens because qemu-kvm-docs-6
> doesn't get uninstalled when qemu-kvm-common-4 gets installed, raising a
> conflict.

There's no dependency expressible between a newly introduced package and something it replaced. This would have to be a backwards "Obsoletes".

You could make qemu-kvm-docs have an "Requires: qemu-kvm-common = %{version}%{release}"

I've not tried, but I don't think that will fix the downgrade though - I think it'll just result in dnf complaining that there's no way to downgrade qemu-kvm-docs instead of complaining about file conflicts.

> Downgrading from qemu-kvm-6 to qemu-kvm-4 shouldn't break.

Really ? Downgrading RPMs is not a supported scenario to my knowledge. There's all sorts of scenarios in which it can go wrong and they are often impossible to express in dependancies AFAIK.

Comment 2 Danilo de Paula 2021-09-27 21:17:13 UTC
Downgrade is not supported.