From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932586AbbJHLev (ORCPT ); Thu, 8 Oct 2015 07:34:51 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:39028 "EHLO out5-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932495AbbJHLer (ORCPT ); Thu, 8 Oct 2015 07:34:47 -0400 X-Sasl-enc: LgTJaFMgMHxxTAwyAPm0B55VZUnQVJMaEFZ9XmGzfJb7 1444304086 From: Sergei Zviagintsev To: Greg Kroah-Hartman , Daniel Mack , David Herrmann , Djalal Harouni Cc: linux-kernel@vger.kernel.org, Sergei Zviagintsev Subject: [PATCH 42/44] kdbus: Check if fd is allocated before trying to free it Date: Thu, 8 Oct 2015 14:32:11 +0300 Message-Id: <060332f0a4e1df27fc0ceadab2f9f430e61298ab.1444302968.git.sergei@s15v.net> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: References: In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Elements of `fds' array were set to -1 in case if we couldn't allocate a fd. Verify that element contains a valid fd number before submitting it to put_unused_fd(). Signed-off-by: Sergei Zviagintsev --- ipc/kdbus/message.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ipc/kdbus/message.c b/ipc/kdbus/message.c index 0653a085c104..da685049d66c 100644 --- a/ipc/kdbus/message.c +++ b/ipc/kdbus/message.c @@ -221,7 +221,8 @@ int kdbus_gaps_install(struct kdbus_gaps *gaps, struct kdbus_pool_slice *slice, exit: if (ret < 0) for (i = 0; i < n_fds; ++i) - put_unused_fd(fds[i]); + if (fds[i] >= 0) + put_unused_fd(fds[i]); kfree(fds); *out_incomplete = incomplete_fds; return ret; -- 1.8.3.1