[Ocfs2-tools-devel] [RESEND][PATCH] Improvement to tunefs.ocfs2 online resize to handle symbolic link

Wengang Wang wen.gang.wang at oracle.com
Tue Mar 23 03:45:01 PDT 2010


Hi Jiaju,

> 
> Oh yes, thanks a lot for the modification;-)
> New patch attached as below.
> 
> Thanks,
> Jiaju
> ---
>  ocfs2_controld/mount.c |   15 ++++++++++++++-
>  1 files changed, 14 insertions(+), 1 deletions(-)
> 
> diff --git a/ocfs2_controld/mount.c b/ocfs2_controld/mount.c
> index 36459d1..b46a04b 100644
> --- a/ocfs2_controld/mount.c
> +++ b/ocfs2_controld/mount.c
> @@ -260,11 +260,24 @@ static void add_service(struct mountgroup *mg, const char *device,
>  			   const char *service, int ci, int fd)
>  {
>  	struct service *ms;
> +	struct stat st1, st2;
>  
>  	log_debug("Adding service %s to device %s uuid %s",
>  		  service, device, mg->mg_uuid);
>  
> -	if (strcmp(mg->mg_device, device)) {
> +	if (stat(mg->mg_device, &st1)) {
> +		fill_error(mg, errno, "Failed to stat device \"%s\": %s",
> +			   mg->mg_device, strerror(errno));
> +		return;
> +	}
> +
> +	if (stat(device, &st2)) {
> +		fill_error(mg, errno, "Failed to stat device \"%s\": %s",
> +			   device, strerror(errno));
> +		return;
> +	}
> +
> +	if (st1.st_rdev != st2.st_rdev) {
>  		fill_error(mg, EINVAL,
>  			   "Trying to mount fs %s on device %s, but it is already mounted from device %s",
>  			   mg->mg_uuid, device, mg->mg_device);

I guess Joel meant also the device string here, \"%s\".

regards,
wengang.



More information about the Ocfs2-tools-devel mailing list