• M
    qemuDomainGetPreservedMounts: Fix suffixes for corner cases · 6451b55e
    Michal Privoznik 提交于
    https://bugzilla.redhat.com/show_bug.cgi?id=1431112
    
    Imagine a FS mounted on /dev/blah/blah2. Our process of creating
    suffix for temporary location where all the mounted filesystems
    are moved is very simplistic. We want:
    
    /var/run/libvirt/qemu/$domName.$suffix\
    
    were $suffix is just the mount point path stripped of the "/dev/"
    prefix. For instance:
    
    /var/run/libvirt/qemu/fedora.mqueue  for /dev/mqueue
    /var/run/libvirt/qemu/fedora.pts     for /dev/pts
    
    and so on. Now if we plug /dev/blah/blah2 into the example we see
    some misbehaviour:
    
    /var/run/libvirt/qemu/fedora.blah/blah2
    
    Well, misbehaviour if /dev/blah/blah2 is a file, because in that
    case we call virFileTouch() instead of virFileMakePath().
    The solution is to replace all the slashes in the suffix with say
    dots. That way we don't have to care about nested directories.
    IOW, the result we want for given example is:
    
    /var/run/libvirt/qemu/fedora.blah.blah2
    Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
    Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
    6451b55e
qemu_domain.c 281.6 KB