Re: [PATCH] fix: Monitor doesn't return after starting daemon

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 14 Dec 2010 14:47:27 +0000 "Czarnowska, Anna"
<anna.czarnowska@xxxxxxxxx> wrote:

> >From 8b2465b0d314cc93bba5797dbad9fd2813f0a79e Mon Sep 17 00:00:00 2001
> From: Anna Czarnowska <anna.czarnowska@xxxxxxxxx>
> Date: Tue, 14 Dec 2010 12:26:33 +0100
> Subject: [PATCH] fix: Monitor doesn't return after starting daemon
> Cc: linux-raid@xxxxxxxxxxxxxxx, Williams, Dan J <dan.j.williams@xxxxxxxxx>, Ciechanowski, Ed <ed.ciechanowski@xxxxxxxxx>
> 
> Because both parent and child process continue after make_daemon succeeds.

Applied, thanks.

NeilBrown


> 
> Signed-off-by: Anna Czarnowska <anna.czarnowska@xxxxxxxxx>
> ---
>  Monitor.c |   10 ++++++----
>  1 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/Monitor.c b/Monitor.c
> index e7f6d03..4ae1d2b 100644
> --- a/Monitor.c
> +++ b/Monitor.c
> @@ -152,9 +152,11 @@ int Monitor(struct mddev_dev *devlist,
>  	info.mailfrom = mailfrom;
>  	info.dosyslog = dosyslog;
>  
> -	if (daemonise)
> -		if (make_daemon(pidfile))
> -			return 1;
> +	if (daemonise) {
> +		int rv = make_daemon(pidfile);
> +		if (rv >= 0)
> +			return rv;
> +	}
>  
>  	if (share) 
>  		if (check_one_sharer(scan))
> @@ -272,7 +274,7 @@ static int make_daemon(char *pidfile)
>  	dup2(0,1);
>  	dup2(0,2);
>  	setsid();
> -	return 0;
> +	return -1;
>  }
>  
>  static int check_one_sharer(int scan)

--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux