]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
kvm tools: Rename raw_image_ops to blk_dev_ops
authorAsias He <asias.hejun@gmail.com>
Wed, 18 May 2011 08:19:11 +0000 (16:19 +0800)
committerPekka Enberg <penberg@kernel.org>
Wed, 18 May 2011 18:29:02 +0000 (21:29 +0300)
This patch also adds some comments to disk/blk.c

Signed-off-by: Asias He <asias.hejun@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
tools/kvm/disk/blk.c

index 7383967c95a4fc18e1393ba88fea864451e59402..59294e841dc168f52051dacbfa33490ee664d383 100644 (file)
@@ -3,7 +3,7 @@
 /*
  * raw image and blk dev are similar, so reuse raw image ops.
  */
-static struct disk_image_operations raw_image_ops = {
+static struct disk_image_operations blk_dev_ops = {
        .read_sector            = raw_image__read_sector,
        .write_sector           = raw_image__write_sector,
        .close                  = raw_image__close,
@@ -17,7 +17,11 @@ struct disk_image *blkdev__probe(const char *filename, struct stat *st)
        if (!S_ISBLK(st->st_mode))
                return NULL;
 
-       fd              = open(filename, O_RDONLY);
+       /*
+        * Be careful! We are opening host block device!
+        * Open it readonly since we do not want to break user's data on disk.
+        */
+       fd                      = open(filename, O_RDONLY);
        if (fd < 0)
                return NULL;
 
@@ -26,5 +30,10 @@ struct disk_image *blkdev__probe(const char *filename, struct stat *st)
                return NULL;
        }
 
-       return disk_image__new(fd, size, &raw_image_ops, DISK_IMAGE_MMAP);
+       /*
+        * FIXME: This will not work on 32-bit host because we can not
+        * mmap large disk. There is not enough virtual address space
+        * in 32-bit host. However, this works on 64-bit host.
+        */
+       return disk_image__new(fd, size, &blk_dev_ops, DISK_IMAGE_MMAP);
 }