block: Fix bdrv_is_first_non_filter()
authorKevin Wolf <kwolf@redhat.com>
Tue, 4 Feb 2014 10:45:31 +0000 (11:45 +0100)
committerKevin Wolf <kwolf@redhat.com>
Fri, 21 Feb 2014 20:02:21 +0000 (21:02 +0100)
Consider top level BlockDriverStates as well.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Benoit Canet <benoit@irqsave.net>
Tested-by: Benoit Canet <benoit@irqsave.net>
block.c

diff --git a/block.c b/block.c
index 6f4baca..034e1ab 100644 (file)
--- a/block.c
+++ b/block.c
@@ -5416,11 +5416,7 @@ bool bdrv_is_first_non_filter(BlockDriverState *candidate)
     QTAILQ_FOREACH(bs, &bdrv_states, device_list) {
         bool perm;
 
-        if (!bs->file) {
-            continue;
-        }
-
-        perm = bdrv_recurse_is_first_non_filter(bs->file, candidate);
+        perm = bdrv_recurse_is_first_non_filter(bs, candidate);
 
         /* candidate is the first non filter */
         if (perm) {