From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A1F37C282CA for ; Wed, 13 Feb 2019 18:55:59 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6EF5820835 for ; Wed, 13 Feb 2019 18:55:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1550084159; bh=43OfMV1uxPXRF3MdQbs7zYJN94XtBRURESsDqORbxDw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=nuz/XPksXXfC3yf1JcT7kqRRnrAp0mSgY3Po8mlL95o/iZSih0pdSeCy/9titE2dz vtHtq11QZQ6ZYH34boNKTrZbrFc/n+RRplyKL9UDkGQsooXRmbAg+qXdy6G+6qkouE Xm6A5GGNHmHM6T719HpJMvUySeSqPnH+eQhsJOyo= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732572AbfBMSkY (ORCPT ); Wed, 13 Feb 2019 13:40:24 -0500 Received: from mail.kernel.org ([198.145.29.99]:38476 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728032AbfBMSkY (ORCPT ); Wed, 13 Feb 2019 13:40:24 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A01B2222D7; Wed, 13 Feb 2019 18:40:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1550083221; bh=43OfMV1uxPXRF3MdQbs7zYJN94XtBRURESsDqORbxDw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=11JHtaRSqgEV/CQcbiOgCXvDgg8uGsIUCzOusjZcHinSy9VpVfE/AqrpQtiO6VrSC H4Tlhcf+KwCbMdTu93iVHrPG1oTrmglqhcHqJj0ZPRLxBtb6WVBHvjlb2k3f2dFWWO 04dhR99e4KTPAr7AT0pFbXpMJ1laKRP8SqGx4rAQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org Subject: [PATCH 4.9 07/24] debugfs: fix debugfs_rename parameter checking Date: Wed, 13 Feb 2019 19:38:04 +0100 Message-Id: <20190213183647.883451870@linuxfoundation.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190213183647.333441569@linuxfoundation.org> References: <20190213183647.333441569@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org 4.9-stable review patch. If anyone has any objections, please let me know. ------------------ From: Greg Kroah-Hartman commit d88c93f090f708c18195553b352b9f205e65418f upstream. debugfs_rename() needs to check that the dentries passed into it really are valid, as sometimes they are not (i.e. if the return value of another debugfs call is passed into this one.) So fix this up by properly checking if the two parent directories are errors (they are allowed to be NULL), and if the dentry to rename is not NULL or an error. Cc: stable Signed-off-by: Greg Kroah-Hartman --- fs/debugfs/inode.c | 7 +++++++ 1 file changed, 7 insertions(+) --- a/fs/debugfs/inode.c +++ b/fs/debugfs/inode.c @@ -732,6 +732,13 @@ struct dentry *debugfs_rename(struct den struct dentry *dentry = NULL, *trap; struct name_snapshot old_name; + if (IS_ERR(old_dir)) + return old_dir; + if (IS_ERR(new_dir)) + return new_dir; + if (IS_ERR_OR_NULL(old_dentry)) + return old_dentry; + trap = lock_rename(new_dir, old_dir); /* Source or destination directories don't exist? */ if (d_really_is_negative(old_dir) || d_really_is_negative(new_dir))