From patchwork Sat Sep 30 13:01:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steven Rostedt X-Patchwork-Id: 146933 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2a8e:b0:403:3b70:6f57 with SMTP id in14csp371628vqb; Sat, 30 Sep 2023 06:03:02 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGYt7+zWyepfyiw3paMu3Rv01eg14Fm0AyDIIND2adbqxVgAR8CvFnt259KdfD//dM3s/gr X-Received: by 2002:a17:90a:bd8d:b0:268:e5db:6e19 with SMTP id z13-20020a17090abd8d00b00268e5db6e19mr5952128pjr.20.1696078974474; Sat, 30 Sep 2023 06:02:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696078974; cv=none; d=google.com; s=arc-20160816; b=V4mgVafHrJIUFb4V/aYGjnOcA7o5koVYLwFRrDEgFJ14KX+YslnWBWuKBqWxJrgwbA uMyOi1w9LdKDBIc8ZDunYbPhbH2xOEoMzmQ4WU2duFtuha6Vx1t13miiWSup7s3RmzEI 8t9dlDgOGJmsQ0zPzGUhNdXZ4rmze9LcZX0XArwkhatXo22etmjIfD2WpspgyGU/GQCP ecLq5Q/O1CkFWj3sHneAQqijsTy91e0Uy0EZTjOsv4GzZCnhYT0u/z0S+aKis1hYb2vp qNajqwPo9xfokVHiz0BsDjzdHkHX3NjCE8L+KWKSfC1aPzhZ3Kd1uYp986owry0nv9sZ VlQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:subject:cc:to:from:date; bh=HV/CegPdLO/riKsZyZETMFC9hN9Bf1U5D+FD9eYRkb4=; fh=sfPlOaiRUBNaVHeIKNQaOvjZ3J9HXWClk6V8p9SiEik=; b=gCr8iuMCxHr1/bWT+qT6FMmntskQevm4hvK4jc21AF4BEQfeSwYXJ01+J0Mdfqprf8 bnA4yLuyt/d93EEoXGQhpWWzwuEPfBCljU8lbQeFoS6Of9Tze9u71EHsQ9+NtdxG9G9O l8RZR5OmU+IYzxLJqBUWi8Dya1Afaw1lht8HlBdLP1PXoCFOATCoZAGom8VSpOS7uDh/ WbjFbzFJOWZKgm8uLc1ZaV8wM9DQIMCRYvGe2/PPjcn6e7PaUms0Hdjk2YUOS3Vy8iIk yJM4Of7ClxJkFUHoaXt5M38VN6b/W7gfURNBEHcLLUW84lXpPP+gweCmULdSjHx861k4 Ut5Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id z22-20020a17090ab11600b00279435d74d8si2059291pjq.135.2023.09.30.06.02.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 30 Sep 2023 06:02:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id D08E48025B72; Sat, 30 Sep 2023 06:01:47 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233939AbjI3NBm (ORCPT + 20 others); Sat, 30 Sep 2023 09:01:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43892 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230516AbjI3NBm (ORCPT ); Sat, 30 Sep 2023 09:01:42 -0400 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D8EBCF9 for ; Sat, 30 Sep 2023 06:01:39 -0700 (PDT) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C6AA5C433C7; Sat, 30 Sep 2023 13:01:32 +0000 (UTC) Date: Sat, 30 Sep 2023 09:01:06 -0400 From: Steven Rostedt To: LKML Cc: Linux trace kernel , Masami Hiramatsu , Mark Rutland Subject: [PATCH] eventfs: Test for dentries array allocated in eventfs_release() Message-ID: <20230930090106.1c3164e9@rorschach.local.home> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-Spam-Status: No, score=-1.6 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Sat, 30 Sep 2023 06:01:47 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1778467706504176318 X-GMAIL-MSGID: 1778467706504176318 From: "Steven Rostedt (Google)" The dcache_dir_open_wrapper() could be called when a dynamic event is being deleted leaving a dentry with no children. In this case the dlist->dentries array will never be allocated. This needs to be checked for in eventfs_release(), otherwise it will trigger a NULL pointer dereference. Fixes: ef36b4f92868 ("eventfs: Remember what dentries were created on dir open") Signed-off-by: Steven Rostedt (Google) Acked-by: Masami Hiramatsu (Google) --- fs/tracefs/event_inode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/tracefs/event_inode.c b/fs/tracefs/event_inode.c index 5f1714089884..8c8d64e76103 100644 --- a/fs/tracefs/event_inode.c +++ b/fs/tracefs/event_inode.c @@ -421,7 +421,7 @@ static int eventfs_release(struct inode *inode, struct file *file) if (WARN_ON_ONCE(!dlist)) return -EINVAL; - for (i = 0; dlist->dentries[i]; i++) { + for (i = 0; dlist->dentries && dlist->dentries[i]; i++) { dput(dlist->dentries[i]); }