block: helper function, to find the base image of a chain
This is a simple helper function, that will return the base image of a given image chain. Signed-off-by: Jeff Cody <jcody@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
		
							parent
							
								
									9abf2dbaf6
								
							
						
					
					
						commit
						79fac5680d
					
				
							
								
								
									
										16
									
								
								block.c
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								block.c
									
									
									
									
									
								
							@ -3117,6 +3117,22 @@ int bdrv_get_backing_file_depth(BlockDriverState *bs)
 | 
				
			|||||||
    return 1 + bdrv_get_backing_file_depth(bs->backing_hd);
 | 
					    return 1 + bdrv_get_backing_file_depth(bs->backing_hd);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					BlockDriverState *bdrv_find_base(BlockDriverState *bs)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    BlockDriverState *curr_bs = NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (!bs) {
 | 
				
			||||||
 | 
					        return NULL;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    curr_bs = bs;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    while (curr_bs->backing_hd) {
 | 
				
			||||||
 | 
					        curr_bs = curr_bs->backing_hd;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return curr_bs;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#define NB_SUFFIXES 4
 | 
					#define NB_SUFFIXES 4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
char *get_human_readable_size(char *buf, int buf_size, int64_t size)
 | 
					char *get_human_readable_size(char *buf, int buf_size, int64_t size)
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1
									
								
								block.h
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								block.h
									
									
									
									
									
								
							@ -207,6 +207,7 @@ int bdrv_drop_intermediate(BlockDriverState *active, BlockDriverState *top,
 | 
				
			|||||||
                           BlockDriverState *base);
 | 
					                           BlockDriverState *base);
 | 
				
			||||||
BlockDriverState *bdrv_find_overlay(BlockDriverState *active,
 | 
					BlockDriverState *bdrv_find_overlay(BlockDriverState *active,
 | 
				
			||||||
                                    BlockDriverState *bs);
 | 
					                                    BlockDriverState *bs);
 | 
				
			||||||
 | 
					BlockDriverState *bdrv_find_base(BlockDriverState *bs);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
typedef struct BdrvCheckResult {
 | 
					typedef struct BdrvCheckResult {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user