qemu-img: Killed by SIGTRAP on check of the fuzzed image

Bug #1355738 reported by Maria Kustova
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

'qemu-img check -r all' was killed by SIGTRAP.

Sequence:
 1. Unpack the attached archive, make a copy of test.img
 2. Put copy.img and backing_img.qed in the same directory
 3. Execute

qemu-img check -f qcow2 -r all copy.img

Result: qemu-img was killed by SIGTRAP with the reason:

(process:2210): GLib-ERROR **: gmem.c:140: failed to allocate 18446744069633940288 bytes

The qemu-img execution log can be found in the attached archive.

qemu.git HEAD 2d591ce2aeebf

Revision history for this message
Maria Kustova (maria-k-o) wrote :
Revision history for this message
Max Reitz (xanclic) wrote :

Hi,

This issue has at least been partially fixed in master (5f77ef69a195098baddfdc6d189f1b4a94587378):

$ ./qemu-img check -f qcow2 -r all copy.img
# ...
The following inconsistencies were found and repaired:

    0 leaked clusters
    1 corruptions

Double checking the fixed image now...

469 errors were found on the image.
Data may be corrupted, or further writes to the image may corrupt it.

4766 internal errors have occurred during the check.
2459/4434 = 55.46% allocated, 99.31% fragmented, 10.41% compressed clusters
Image end offset: 2048

As with bug 1355697, I'm still working on the repair function. But this image is broken in a way that there's no real way to fix it. The best we could do is ask the user to use qemu-img convert and then hope for the best. I'll just mark this as fixed.

Max

Changed in qemu:
status: New → Fix Committed
Thomas Huth (th-huth)
Changed in qemu:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.