forked from mirrors/linux
		
	md: use mddev_suspend/resume instead of ->quiesce()
mddev_suspend() is a more general interface than calling ->quiesce() and is so more extensible. A future patch will make use of this. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Shaohua Li <shli@fb.com>
This commit is contained in:
		
							parent
							
								
									b3143b9a38
								
							
						
					
					
						commit
						9e1cc0a545
					
				
					 1 changed files with 12 additions and 12 deletions
				
			
		|  | @ -4866,8 +4866,8 @@ suspend_lo_store(struct mddev *mddev, const char *buf, size_t len) | |||
| 		mddev->pers->quiesce(mddev, 2); | ||||
| 	} else { | ||||
| 		/* Expanding suspended region - need to wait */ | ||||
| 		mddev->pers->quiesce(mddev, 1); | ||||
| 		mddev->pers->quiesce(mddev, 0); | ||||
| 		mddev_suspend(mddev); | ||||
| 		mddev_resume(mddev); | ||||
| 	} | ||||
| 	err = 0; | ||||
| unlock: | ||||
|  | @ -4910,8 +4910,8 @@ suspend_hi_store(struct mddev *mddev, const char *buf, size_t len) | |||
| 		mddev->pers->quiesce(mddev, 2); | ||||
| 	} else { | ||||
| 		/* Expanding suspended region - need to wait */ | ||||
| 		mddev->pers->quiesce(mddev, 1); | ||||
| 		mddev->pers->quiesce(mddev, 0); | ||||
| 		mddev_suspend(mddev); | ||||
| 		mddev_resume(mddev); | ||||
| 	} | ||||
| 	err = 0; | ||||
| unlock: | ||||
|  | @ -6642,7 +6642,7 @@ static int set_bitmap_file(struct mddev *mddev, int fd) | |||
| 			struct bitmap *bitmap; | ||||
| 
 | ||||
| 			bitmap = bitmap_create(mddev, -1); | ||||
| 			mddev->pers->quiesce(mddev, 1); | ||||
| 			mddev_suspend(mddev); | ||||
| 			if (!IS_ERR(bitmap)) { | ||||
| 				mddev->bitmap = bitmap; | ||||
| 				err = bitmap_load(mddev); | ||||
|  | @ -6652,11 +6652,11 @@ static int set_bitmap_file(struct mddev *mddev, int fd) | |||
| 				bitmap_destroy(mddev); | ||||
| 				fd = -1; | ||||
| 			} | ||||
| 			mddev->pers->quiesce(mddev, 0); | ||||
| 			mddev_resume(mddev); | ||||
| 		} else if (fd < 0) { | ||||
| 			mddev->pers->quiesce(mddev, 1); | ||||
| 			mddev_suspend(mddev); | ||||
| 			bitmap_destroy(mddev); | ||||
| 			mddev->pers->quiesce(mddev, 0); | ||||
| 			mddev_resume(mddev); | ||||
| 		} | ||||
| 	} | ||||
| 	if (fd < 0) { | ||||
|  | @ -6942,7 +6942,7 @@ static int update_array_info(struct mddev *mddev, mdu_array_info_t *info) | |||
| 			mddev->bitmap_info.space = | ||||
| 				mddev->bitmap_info.default_space; | ||||
| 			bitmap = bitmap_create(mddev, -1); | ||||
| 			mddev->pers->quiesce(mddev, 1); | ||||
| 			mddev_suspend(mddev); | ||||
| 			if (!IS_ERR(bitmap)) { | ||||
| 				mddev->bitmap = bitmap; | ||||
| 				rv = bitmap_load(mddev); | ||||
|  | @ -6950,7 +6950,7 @@ static int update_array_info(struct mddev *mddev, mdu_array_info_t *info) | |||
| 				rv = PTR_ERR(bitmap); | ||||
| 			if (rv) | ||||
| 				bitmap_destroy(mddev); | ||||
| 			mddev->pers->quiesce(mddev, 0); | ||||
| 			mddev_resume(mddev); | ||||
| 		} else { | ||||
| 			/* remove the bitmap */ | ||||
| 			if (!mddev->bitmap) { | ||||
|  | @ -6973,9 +6973,9 @@ static int update_array_info(struct mddev *mddev, mdu_array_info_t *info) | |||
| 				mddev->bitmap_info.nodes = 0; | ||||
| 				md_cluster_ops->leave(mddev); | ||||
| 			} | ||||
| 			mddev->pers->quiesce(mddev, 1); | ||||
| 			mddev_suspend(mddev); | ||||
| 			bitmap_destroy(mddev); | ||||
| 			mddev->pers->quiesce(mddev, 0); | ||||
| 			mddev_resume(mddev); | ||||
| 			mddev->bitmap_info.offset = 0; | ||||
| 		} | ||||
| 	} | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 NeilBrown
						NeilBrown