block: Avoid printing NULL string in error messages
Even for nodes that have a BlockBackend attached, bdrv_get_parent_name() can return NULL if the BB is anonymous (e.g. it belongs to a block job or a device that was created with a drive=<node-name> option). Remove the information from the error message. The user probably knows already why the node is still in use. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
		
							parent
							
								
									62acae8a9d
								
							
						
					
					
						commit
						e467da7b92
					
				| 
						 | 
				
			
			@ -1803,8 +1803,7 @@ static void external_snapshot_prepare(BlkActionState *common,
 | 
			
		|||
    }
 | 
			
		||||
 | 
			
		||||
    if (bdrv_has_blk(state->new_bs)) {
 | 
			
		||||
        error_setg(errp, "The snapshot is already in use by %s",
 | 
			
		||||
                   bdrv_get_parent_name(state->new_bs));
 | 
			
		||||
        error_setg(errp, "The snapshot is already in use");
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -2532,8 +2531,7 @@ void qmp_x_blockdev_insert_medium(bool has_device, const char *device,
 | 
			
		|||
    }
 | 
			
		||||
 | 
			
		||||
    if (bdrv_has_blk(bs)) {
 | 
			
		||||
        error_setg(errp, "Node '%s' is already in use by '%s'", node_name,
 | 
			
		||||
                   bdrv_get_parent_name(bs));
 | 
			
		||||
        error_setg(errp, "Node '%s' is already in use", node_name);
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -3941,8 +3939,7 @@ void qmp_x_blockdev_del(bool has_id, const char *id,
 | 
			
		|||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        if (bdrv_has_blk(bs)) {
 | 
			
		||||
            error_setg(errp, "Node %s is in use by %s",
 | 
			
		||||
                       node_name, bdrv_get_parent_name(bs));
 | 
			
		||||
            error_setg(errp, "Node %s is in use", node_name);
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        aio_context = bdrv_get_aio_context(bs);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -68,9 +68,9 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/
 | 
			
		|||
 | 
			
		||||
=== Invalid command - snapshot node used as active layer ===
 | 
			
		||||
 | 
			
		||||
{"error": {"class": "GenericError", "desc": "The snapshot is already in use by virtio0"}}
 | 
			
		||||
{"error": {"class": "GenericError", "desc": "The snapshot is already in use by virtio0"}}
 | 
			
		||||
{"error": {"class": "GenericError", "desc": "The snapshot is already in use by virtio1"}}
 | 
			
		||||
{"error": {"class": "GenericError", "desc": "The snapshot is already in use"}}
 | 
			
		||||
{"error": {"class": "GenericError", "desc": "The snapshot is already in use"}}
 | 
			
		||||
{"error": {"class": "GenericError", "desc": "The snapshot is already in use"}}
 | 
			
		||||
 | 
			
		||||
=== Invalid command - snapshot node used as backing hd ===
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue