[Openais] [PATCH] corosync/trunk: fix thread vs fork init order

Steven Dake sdake at redhat.com
Mon Nov 30 14:51:39 PST 2009


good for merge
On Mon, 2009-11-30 at 23:00 +0100, Fabio M. Di Nitto wrote:
> see subject.. those 2 init calls will create separate threads and they
> need to be invoked only after we have forked in background or bad things
> happen.
> 
> Fabio
> plain text document attachment (corosync_fix_init_order.diff)
> Index: exec/main.c
> ===================================================================
> --- exec/main.c	(revision 2556)
> +++ exec/main.c	(working copy)
> @@ -1247,13 +1247,6 @@
>  	(void)signal (SIGPIPE, SIG_IGN);
>  #endif
>  
> -	corosync_timer_init (
> -		serialize_lock,
> -		serialize_unlock,
> -		sched_priority);
> -
> -	corosync_poll_handle = poll_create ();
> -
>  	/*
>  	 * Load the object database interface
>  	 */
> @@ -1413,6 +1406,13 @@
>  	}
>  	logsys_fork_completed();
>  
> +	corosync_timer_init (
> +		serialize_lock,
> +		serialize_unlock,
> +		sched_priority);
> +
> +	corosync_poll_handle = poll_create ();
> +
>  	/*
>  	 * Sleep for a while to let other nodes in the cluster
>  	 * understand that this node has been away (if it was
> _______________________________________________
> Openais mailing list
> Openais at lists.linux-foundation.org
> https://lists.linux-foundation.org/mailman/listinfo/openais



More information about the Openais mailing list