qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] qemu-io: use BDRV_O_FILE to implement the growable


From: Christoph Hellwig
Subject: [Qemu-devel] [PATCH] qemu-io: use BDRV_O_FILE to implement the growable open option
Date: Wed, 15 Jul 2009 23:11:21 +0200
User-agent: Mutt/1.3.28i

Instead of doing our own check for protocols which fails because raw isn't
formally a protocol but special cased in find_protocol specify the BDRV_O_FILE
option to use the same code as bdrv_file_open does.

While we're at it also add the missing documentation for -g to the main
qemu-io help string.


Signed-off-by: Christoph Hellwig <address@hidden>

Index: qemu/qemu-io.c
===================================================================
--- qemu.orig/qemu-io.c 2009-07-15 20:20:29.288013364 +0200
+++ qemu/qemu-io.c      2009-07-15 20:27:28.653015235 +0200
@@ -1199,23 +1199,19 @@ static int openfile(char *name, int flag
        if (!bs)
                return 1;
 
+       if (growable) {
+               flags |= BDRV_O_FILE;
+       }
+
        if (bdrv_open(bs, name, flags) == -1) {
                fprintf(stderr, "%s: can't open device %s\n", progname, name);
                bs = NULL;
                return 1;
        }
 
-
        if (growable) {
-               if (!bs->drv || !bs->drv->protocol_name) {
-                       fprintf(stderr,
-                               "%s: only protocols can be opened growable\n",
-                               progname);
-                       return 1;
-               }
                bs->growable = 1;
        }
-
        return 0;
 }
 
@@ -1327,6 +1323,7 @@ static void usage(const char *name)
 "  -r, --read-only      export read-only\n"
 "  -s, --snapshot       use snapshot file\n"
 "  -n, --nocache        disable host cache\n"
+"  -g, --growable       allow file to grow (only applies to protocols)\n"
 "  -m, --misalign       misalign allocations for O_DIRECT\n"
 "  -h, --help           display this help and exit\n"
 "  -V, --version        output version information and exit\n"




reply via email to

[Prev in Thread] Current Thread [Next in Thread]