|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v10 04/31] tools/libxl: Introduce new helper function dup_fd_helper()
On Mon, Feb 22, 2016 at 10:52:08AM +0800, Wen Congyang wrote:
> It is pure refactoring and no functional changes.
>
> Signed-off-by: Wen Congyang <wency@xxxxxxxxxxxxxx>
Assuming this is going to be used later:
Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
> ---
> tools/libxl/libxl_save_callout.c | 24 ++++++++++++++++--------
> 1 file changed, 16 insertions(+), 8 deletions(-)
>
> diff --git a/tools/libxl/libxl_save_callout.c
> b/tools/libxl/libxl_save_callout.c
> index 7f1f5d4..a885504 100644
> --- a/tools/libxl/libxl_save_callout.c
> +++ b/tools/libxl/libxl_save_callout.c
> @@ -118,6 +118,21 @@ void libxl__save_helper_init(libxl__save_helper_state
> *shs)
> }
>
> /*----- helper execution -----*/
> +static int dup_fd_helper(libxl__gc *gc, int fd, const char *what)
> +{
> + int dup_fd = fd;
> +
> + if (fd <= 2) {
> + dup_fd = dup(fd);
> + if (dup_fd < 0) {
> + LOGE(ERROR,"dup %s", what);
> + exit(-1);
> + }
> + }
> + libxl_fd_set_cloexec(CTX, dup_fd, 0);
> +
> + return dup_fd;
> +}
>
> /*
> * Both save and restore share four parameters:
> @@ -186,14 +201,7 @@ static void run_helper(libxl__egc *egc,
> libxl__save_helper_state *shs,
>
> pid_t pid = libxl__ev_child_fork(gc, &shs->child, helper_exited);
> if (!pid) {
> - if (stream_fd <= 2) {
> - stream_fd = dup(stream_fd);
> - if (stream_fd < 0) {
> - LOGE(ERROR,"dup migration stream fd");
> - exit(-1);
> - }
> - }
> - libxl_fd_set_cloexec(CTX, stream_fd, 0);
> + stream_fd = dup_fd_helper(gc, stream_fd, "migration stream fd");
> *stream_fd_arg = GCSPRINTF("%d", stream_fd);
>
> for (i=0; i<num_preserve_fds; i++)
> --
> 2.5.0
>
>
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |