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 1601310

Summary: qemu-img map 'Aborted (core dumped)' when specifying a plain file
Product: Red Hat Enterprise Linux 7 Reporter: Tingting Mao <timao>
Component: qemu-kvm-rhevAssignee: Hanna Czenczek <hreitz>
Status: CLOSED ERRATA QA Contact: Tingting Mao <timao>
Severity: high Docs Contact:
Priority: medium    
Version: 7.6CC: areis, chaoyang, chayang, coli, eblake, juzhang, michen, mrezanin, ngu, pingl, timao, virt-maint
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-rhev-2.12.0-10.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1639374 (view as bug list) Environment:
Last Closed: 2018-11-01 11:13:00 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: 1639374    
Attachments:
Description Flags
gdb backtrace none

Description Tingting Mao 2018-07-16 03:33:54 UTC
Created attachment 1459048 [details]
gdb backtrace

Description of problem:
The command "qemu-img map" results in 'core dumped' when specifying the tested file which is a plain file (i.e. not qcow2/raw image).

Version-Release number of selected component (if applicable):
qemu-kvm-rhev-2.12.0-7.el7
kernel-3.10.0-919.el7

How reproducible:
3/3

Steps to Reproduce:
1.Create a plain file
# cat test
ttttttttttt
tttttttt
2.Dump the metadata
# qemu-img map test 
Offset          Length          Mapped to       File
qemu-img: qemu-img.c:2765: get_block_status: Assertion `bytes' failed.
Aborted (core dumped)

Actual results:

Expected results:
No core dumped, and the metadata should be dumped successfully.


Additional info:
1.The result is expected in rhel7.5, so I think it should be a regression. And more details are listed below.

Tested packages:
qemu-kvm-rhev-2.10.0-21.el7_5.1
kernel-3.10.0-862.el7

Steps:
1.1 Create one plain file
# cat test 
tttttttttt

sssssss
1.2 Dump metadata of the file
# qemu-img map test 
Offset          Length          Mapped to       File
0               0x200           0               test
# qemu-img map test --output=json
[{ "start": 0, "length": 512, "depth": 0, "zero": false, "data": true, "offset": 0}]


2. It is successful to dump metadata for a qcow2/raw image file
Tested packages:
qemu-kvm-rhev-2.12.0-7.el7
kernel-3.10.0-919.el7

Steps:
2.1 # qemu-img create -f qcow2 base.qcow2 1G
Formatting 'base.qcow2', fmt=qcow2 size=1073741824 cluster_size=65536 lazy_refcounts=off refcount_bits=16
2.2 # qemu-io -c 'write 0 200M' base.qcow2 
wrote 209715200/209715200 bytes at offset 0
200 MiB, 1 ops; 0.1861 sec (1.049 GiB/sec and 5.3720 ops/sec)
2.3 # qemu-img map base.qcow2 
Offset          Length          Mapped to       File
0               0xc800000       0x50000         base.qcow2

Comment 3 Hanna Czenczek 2018-08-06 16:07:00 UTC
Fixed upstream, the commit (e0b371ed5e2db079051139136fd0478728b6a58f) mentions BZ 1589738.

Comment 5 Eric Blake 2018-08-06 20:40:35 UTC
bug 1613046 is tangentially related as another place where qemu has shortcomings dealing with a non-aligned raw file.

Comment 6 Miroslav Rezanina 2018-08-10 10:44:43 UTC
Fix included in qemu-kvm-rhev-2.12.0-10.el7

Comment 8 Tingting Mao 2018-08-14 03:26:35 UTC
Verify this issue like below:

Tested packages:
qemu-kvm-rhev-2.12.0-10.el7
kernel-3.10.0-931.el7

Scenario1
1.Find one temporary file
# cat test 
xxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxx
2.dump the metadata for the file, it works!
2.1 dump with human/default format
# qemu-img map test 
Offset          Length          Mapped to       File
0               0x26            0               test
2.2 dump with json format
# qemu-img map test --output=json
[{ "start": 0, "length": 38, "depth": 0, "zero": false, "data": true, "offset": 0},
{ "start": 38, "length": 474, "depth": 0, "zero": true, "data": false, "offset": 38}]


Scenario2
1. Get the source code
# brew download-build --rpm --arch=x86_64 qemu-kvm-rhev-2.12.0-10.el7.src.rpm
# rpm -ivhf qemu-kvm-rhev-2.12.0-10.el7.src.rpm
# rpmbuild -bp /root/rpmbuild/SPECS/qemu-kvm.spec --nodeps 
2. configure the env
# cd /root/rpmbuild/BUILD/qemu-2.12.0/
# ./configure 
# export QEMU_PROG=/usr/libexec/qemu-kvm
# export QEMU_IMG_PROG=/usr/bin/qemu-img
# export QEMU_IO_PROG=/usr/bin/qemu-io
# export QEMU_NBD_PROG=/usr/bin/qemu-nbd
3. test the 221th case
# cd tests/qemu-iotests/
# ./check -raw 221
QEMU          -- "/usr/libexec/qemu-kvm" -nodefaults -machine accel=qtest
QEMU_IMG      -- "/usr/bin/qemu-img" 
QEMU_IO       -- "/usr/bin/qemu-io"  --cache writeback -f raw
QEMU_NBD      -- "/usr/bin/qemu-nbd" 
IMGFMT        -- raw
IMGPROTO      -- file
PLATFORM      -- Linux/x86_64 lenovo-sr630-01 3.10.0-931.el7.x86_64
TEST_DIR      -- /root/rpmbuild/BUILD/qemu-2.12.0/tests/qemu-iotests/scratch
SOCKET_SCM_HELPER -- 

221 0s ...
Passed all 1 tests

Comment 9 Eric Blake 2018-08-21 12:30:47 UTC
*** Bug 1590024 has been marked as a duplicate of this bug. ***

Comment 10 errata-xmlrpc 2018-11-01 11:13:00 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:3443