diff options
Diffstat (limited to 'results/classifier/118/none/1257334')
| -rw-r--r-- | results/classifier/118/none/1257334 | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/results/classifier/118/none/1257334 b/results/classifier/118/none/1257334 new file mode 100644 index 000000000..04a23825c --- /dev/null +++ b/results/classifier/118/none/1257334 @@ -0,0 +1,113 @@ +permissions: 0.789 +architecture: 0.767 +semantic: 0.754 +device: 0.740 +performance: 0.723 +assembly: 0.717 +kernel: 0.665 +PID: 0.657 +files: 0.651 +graphic: 0.624 +user-level: 0.621 +debug: 0.612 +arm: 0.589 +virtual: 0.582 +socket: 0.538 +network: 0.526 +register: 0.501 +peripherals: 0.476 +TCG: 0.459 +hypervisor: 0.425 +x86: 0.423 +vnc: 0.407 +boot: 0.402 +VMM: 0.392 +mistranslation: 0.392 +KVM: 0.390 +ppc: 0.355 +risc-v: 0.331 +i386: 0.272 + +diffuse handling of image creation from another path + +see attachement! + + + +On Tue, Dec 03, 2013 at 03:22:28PM -0000, Florian Miksch wrote: +Hi, +This does not look like a bug. Please see the explanation below... + +Inlining Florian's reproducer script so we can discuss it via email: + +> #!/bin/bash +> # This script does create a backing image and overlay to +> # reproduce the reported bug. +> #... +> +> mkdir a +> # Create an image from another path e.g. in the directory 'a' +> qemu-img create -f qcow2 a/blob.img 10G +> +> # Create an overlay image from another path in the same directory +> qemu-img create -f qcow2 -b a/blob.img a/ovl.img +> +> # Get Info in the new directory +> cd a +> qemu-img info ovl.img +> # Output: +> # image: ovl.img +> # file format: qcow2 +> # virtual size: 10G (10737418240 bytes) +> # disk size: 196K +> # cluster_size: 65536 +> # backing file: a/blob.img +> +> # Get the Info from another directory +> cd .. +> qemu-img info a/ovl.img +> # Output: +> # image: a/ovl.img +> # file format: qcow2 +> # virtual size: 10G (10737418240 bytes) +> # disk size: 196K +> # cluster_size: 65536 +> # backing file: a/blob.img (actual path: a/a/blob.img) +> +> # Bug: +> # Compare 'image' +> # Compare 'backing file' +> # Look at 'actual path' + +The behavior you are showing here is explained as follows: + +Backing file paths can be relative or absolute and are stored inside +the image file. In this case you are providing a relative backing +file path. + +Relative backing file paths are interpreted against the image filename. +In other words: + + join_path(dirname('a/ovl.img'), 'a/blob.img') -> 'a/a/blob.img' + +> +> # 'qemu-img info' takes the recommended path as name of the image +> # and the actual path is then: a/a/blob.img +> +> qemu-img commit a/ovl.img +> # Now commit fails +> # --> ERROR "No such file or directory + +The problem was: +> qemu-img create -f qcow2 -b a/blob.img a/ovl.img + +If you want to use a relative backing file path, remember that it is +relative to the image file: + +cd a && qemu-img create -f qcow2 -b blob.img ovl.img + +Then 'qemu-img commit a/ovl.img' will work as expected. + +Stefan + + |