xfs
[Top] [All Lists]

Re: [PATCH V2] xfsprogs: xfs_copy: use exit() to replace killall()

To: Junxiao Bi <junxiao.bi@xxxxxxxxxx>
Subject: Re: [PATCH V2] xfsprogs: xfs_copy: use exit() to replace killall()
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue, 6 May 2014 00:57:42 -0700
Cc: xfs@xxxxxxxxxxx, hch@xxxxxxxxxxxxx, joe.jin@xxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1399359284-20536-1-git-send-email-junxiao.bi@xxxxxxxxxx>
References: <1399359284-20536-1-git-send-email-junxiao.bi@xxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Tue, May 06, 2014 at 02:54:44PM +0800, Junxiao Bi wrote:
> Sending a SIGKILL signal to child thread will terminate the whole process,
> xfs_copy will return an error value 137. This cause confuse for script to
> know whether the copy successes.
> 
> Calling exit() in main thread can terminate the whole process and return the
> right value. Replace killall()+abort() with exit(1) to match the old way
> exit in error case. Also remove killall()+pthread_exit(NULL) since return 0
> will be followed by an exit(0) to terminate the process.
> 
> Bug story from Chrisoph Hellwig:
> Btw, I think the reason for this cruft is that xfs_copy was originally
> written using the IRIX sproc interface, and the port to pthreads didn't
> remove this gem:
> 
> http://marc.info/?l=linux-xfs&m=99535721110020&w=2
> 
> Signed-off-by: Junxiao Bi <junxiao.bi@xxxxxxxxxx>
> Cc: Joe jin <joe.jin@xxxxxxxxxx>
> Cc: Chrisoph Hellwig <hch@xxxxxxxxxxxxx>

Looks good (except that you misspelled by name :))

Reviewed-by: Christoph Hellwig <hch@xxxxxx>

<Prev in Thread] Current Thread [Next in Thread>