Bug 961812

Summary: Segfault in inspect-fs.c in mountable code
Product: [Community] Virtualization Tools Reporter: Richard W.M. Jones <rjones>
Component: libguestfsAssignee: Richard W.M. Jones <rjones>
Status: CLOSED UPSTREAM QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: dyasny, mbooth
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-05-10 13:34:51 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:

Description Richard W.M. Jones 2013-05-10 13:20:51 UTC
Description of problem:

$ guestfish --ro -a /tmp/f18x64.vhdx -i

Segfaults with the following stack trace:

libguestfs: error: internal_parse_mountable: internal_parse_mountable_stub: /dev/fedora/root: No such file or directory

Program received signal SIGSEGV, Segmentation fault.
guestfs___check_for_filesystem_on (g=g@entry=0x55555584c620, 
    mountable=0x555555862bb0 "/dev/fedora/root") at inspect-fs.c:122
122	  if (m->im_type == MOUNTABLE_DEVICE) {
Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.25-2.fc18.x86_64 gnome-keyring-3.6.3-1.fc18.x86_64 libconfig-1.4.8-3.fc18.x86_64 libselinux-2.1.12-7.3.fc18.x86_64
(gdb) bt
#0  guestfs___check_for_filesystem_on (g=g@entry=0x55555584c620, 
    mountable=0x555555862bb0 "/dev/fedora/root") at inspect-fs.c:122
#1  0x00007ffff72e3a20 in guestfs__inspect_os (g=g@entry=0x55555584c620)
    at inspect.c:58
#2  0x00007ffff7268ba5 in guestfs_inspect_os (g=0x55555584c620)
    at actions-0.c:499
#3  0x00005555555abebb in inspect_mount () at inspect.c:66
#4  0x000055555557b3ae in main (argc=<optimized out>, argv=0x7fffffffde88)
    at fish.c:471
(gdb) frame 0
#0  guestfs___check_for_filesystem_on (g=g@entry=0x55555584c620, 
    mountable=0x555555862bb0 "/dev/fedora/root") at inspect-fs.c:122
122	  if (m->im_type == MOUNTABLE_DEVICE) {
(gdb) print m
$1 = (struct guestfs_internal_mountable *) 0x0


Version-Release number of selected component (if applicable):

guestfish 1.21.37fedora=20,release=1.fc20,libvirt

How reproducible:

100%

Steps to Reproduce:
1. See above.

Comment 1 Richard W.M. Jones 2013-05-10 13:34:51 UTC
Fixed upstream in commit 7a9ebd757cca0ec22fd730703bed16005ebfb6a4.

Note this happened because of a corruption problem in
the qemu .vhdx driver, described here:
https://bugzilla.redhat.com/show_bug.cgi?id=879234#c10