Received: by 2002:ad5:4acb:0:0:0:0:0 with SMTP id n11csp5560351imw; Wed, 20 Jul 2022 08:01:20 -0700 (PDT) X-Google-Smtp-Source: AGRyM1v+gI+rcr9HydXNFV18ERCG1d6VTRwtBHpHu7pLL1lB7lYzBgTmOsvYqFTCFlVqfsCg1drQ X-Received: by 2002:a05:6402:1011:b0:43a:76bf:6c40 with SMTP id c17-20020a056402101100b0043a76bf6c40mr52006822edu.352.1658329280111; Wed, 20 Jul 2022 08:01:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658329280; cv=none; d=google.com; s=arc-20160816; b=ZTX4+ApV9BFD52nlMsFKmBHPmrKe7pE0hTgg+ormtmUe6KJ0o/chYsrdHTyNAzhTyW FeYD8MvI988AKi3Tq/J2oSGe+LBBFzdRiQqPi1rYqsWiHTwXLxDIXYci2btOuCBLb8U9 hPo7gIAcktCedffY72f2RrpXOcE/1vaVpFXJfSNnHHo0X/kfNcfFlPBOzzLoH9MD90BW 6TNp8gfTJ3HUSZok9CstGIIJF6Rs9jsxIfuRjkSCjlmzI6yBaE4IdmMFOOv/WhQ65u/J ox5LQbiV8DFfpYw3Mjzc7k2the5aYbzi8mQufNUHq7OiFdle5gcwX/wG0YSQb2tiqOc0 DodA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:subject:from:cc:to :content-language:user-agent:mime-version:date:message-id; bh=4aBRI7DUfE8xlqDlb3HLiu14wS3BUoohl7pTjmvtRVM=; b=nIE4yo24DtS2OhFuHT720CY0R/m5BszvbuW8tX9vyWvhd9+oGsFGXxoVTVOciCuNyw ca7FnGMmDVkI/J7YcscEGxU7cM52N6lyNGyTuui9kc9YnJfndnPiLGqsZvVGTYswGy3a Xorsdg6MN3Da+Vgo4/kkGBrbDF1GFJHrtbzx6RuHM3NF7Szeh455OCS3ux3fWOfjsguc r0POY6rdQmkZbAp0agE3SmX4loNm2TDY58u4VOiNUKQOCWv8lMsJxnb8t8ZO1ihHW7Md s5U7ifiFjppkWsZBWWXmdVpFr7JWRVWpd1a1Bw8py7+ir62M4Q2LW4QlAHYZgtIRzoJk T7DA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n9-20020a05640205c900b0043b9010e0c5si7667676edx.316.2022.07.20.08.00.54; Wed, 20 Jul 2022 08:01:20 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234969AbiGTOsK (ORCPT + 99 others); Wed, 20 Jul 2022 10:48:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52838 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231622AbiGTOsJ (ORCPT ); Wed, 20 Jul 2022 10:48:09 -0400 Received: from www262.sakura.ne.jp (www262.sakura.ne.jp [202.181.97.72]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AC6BC4F1A2 for ; Wed, 20 Jul 2022 07:48:08 -0700 (PDT) Received: from fsav117.sakura.ne.jp (fsav117.sakura.ne.jp [27.133.134.244]) by www262.sakura.ne.jp (8.15.2/8.15.2) with ESMTP id 26KEm0SO080968; Wed, 20 Jul 2022 23:48:00 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) Received: from www262.sakura.ne.jp (202.181.97.72) by fsav117.sakura.ne.jp (F-Secure/fsigk_smtp/550/fsav117.sakura.ne.jp); Wed, 20 Jul 2022 23:48:00 +0900 (JST) X-Virus-Status: clean(F-Secure/fsigk_smtp/550/fsav117.sakura.ne.jp) Received: from [192.168.1.9] (M106072142033.v4.enabler.ne.jp [106.72.142.33]) (authenticated bits=0) by www262.sakura.ne.jp (8.15.2/8.15.2) with ESMTPSA id 26KElxKQ080963 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NO); Wed, 20 Jul 2022 23:48:00 +0900 (JST) (envelope-from penguin-kernel@I-love.SAKURA.ne.jp) Message-ID: Date: Wed, 20 Jul 2022 23:47:55 +0900 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Content-Language: en-US To: Roman Gushchin , Andrew Morton Cc: LKML From: Tetsuo Handa Subject: [PATCH] mm: shrinkers: fix double kfree on shrinker name Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_NONE autolearn=ham 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 syzbot is reporting double kfree() at free_prealloced_shrinker() [1], for destroy_unused_super() calls free_prealloced_shrinker() even if prealloc_shrinker() returned an error. Explicitly clear shrinker name when prealloc_shrinker() called kfree(). Link: https://syzkaller.appspot.com/bug?extid=8b481578352d4637f510 [1] Reported-by: syzbot Signed-off-by: Tetsuo Handa Fixes: e33c267ab70de424 ("mm: shrinkers: provide shrinkers with names") --- mm/vmscan.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mm/vmscan.c b/mm/vmscan.c index 64ffdcd019a9..3302d9ed332e 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -707,8 +707,10 @@ int register_shrinker(struct shrinker *shrinker, const char *fmt, ...) return -ENOMEM; err = __register_shrinker(shrinker); - if (err) + if (err) { kfree_const(shrinker->name); + shrinker->name = NULL; + } return err; } #else -- 2.18.4