[PATCH V2] xfsprogs: xfs_copy: use exit() to replace killall()
Dave Chinner
david at fromorbit.com
Tue May 6 03:00:23 CDT 2014
On Tue, May 06, 2014 at 12:57:42AM -0700, Christoph Hellwig wrote:
> 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 at oracle.com>
> > Cc: Joe jin <joe.jin at oracle.com>
> > Cc: Chrisoph Hellwig <hch at infradead.org>
>
> Looks good (except that you misspelled by name :))
>
> Reviewed-by: Christoph Hellwig <hch at lst.de>
I can fix that ;)
I'll queue this up for after the 3.2.0 release.
Cheers,
Dave.
--
Dave Chinner
david at fromorbit.com
More information about the xfs
mailing list