From 69ca9aff1ec9d332696940ea25efd5373ed31d7c Mon Sep 17 00:00:00 2001 From: Libo Chen Date: Mon, 29 Apr 2013 16:11:32 +0400 Subject: [PATCH] cr-check: fix pipe fd leak fix fdinfo leak. Signed-off-by: Libo Chen Signed-off-by: Pavel Emelyanov --- cr-check.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/cr-check.c b/cr-check.c index f19bc4fcf..ddaa429d1 100644 --- a/cr-check.c +++ b/cr-check.c @@ -379,18 +379,23 @@ static int check_unaligned_vmsplice(void) ret = pipe(p); if (ret < 0) { pr_perror("Can't create pipe"); - return -1; + return ret; } iov.iov_base = &buf; iov.iov_len = sizeof(buf); ret = vmsplice(p[1], &iov, 1, SPLICE_F_GIFT | SPLICE_F_NONBLOCK); if (ret < 0) { pr_perror("Unaligned vmsplice doesn't work"); - return -1; + goto err; } pr_info("Unaligned vmsplice works OK\n"); - return 0; + ret = 0; +err: + close(p[0]); + close(p[1]); + + return ret; } #ifndef SO_GET_FILTER