From nobody Sat Sep 13 16:42:57 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id AAD80C05027 for ; Wed, 1 Feb 2023 11:51:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230377AbjBALvt (ORCPT ); Wed, 1 Feb 2023 06:51:49 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55754 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229632AbjBALvs (ORCPT ); Wed, 1 Feb 2023 06:51:48 -0500 Received: from mail-pg1-x535.google.com (mail-pg1-x535.google.com [IPv6:2607:f8b0:4864:20::535]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C5A6D6186F for ; Wed, 1 Feb 2023 03:51:47 -0800 (PST) Received: by mail-pg1-x535.google.com with SMTP id q9so12299653pgq.5 for ; Wed, 01 Feb 2023 03:51:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-disposition:mime-version:message-id:subject:cc:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=SlGu/yguMdOnorRbAMGf2/LPCl7TfmrafuP3w+VjRZY=; b=qcfksjVRYHXXbFbWxhg4FV35oZcmFIR8xCcpzOz3Oc55PjYEki4RenvHgU1lxDZup/ FtNxEApg9HgN6naCG7UNBcU1qeSEtEeELMd9ToaJvHHeNHgaGET8Df8HxPZSbarzA/WZ BU2fIcI+iJt41Ordz+dBHmDPmw5t3FKrA6OeCL1RXyk5PZi6EPu6g3gcsPGewYK1wf8M L/QUzVXP/8341NgBlLQvXsGr07sFn3FlOYlFLo2Lq6/Ztbv6xsfB9J8M4YyMF7mm4fHL bb0HpXYy+fN0NCs6EGg/5ZuSnHSkOnIVxyYQdMWzIDbFMkm0BZM0tzsRYY/Obl1e5z2M QOOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-disposition:mime-version:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=SlGu/yguMdOnorRbAMGf2/LPCl7TfmrafuP3w+VjRZY=; b=FZVqWbt19QgxCoiDqdMpP9Of+yvDV/6YThqVAAakT+fv35lmIvZr9TD2E3kSrdGmzj Vl2ng0cAkEFmi/qGbEEnhOyk9O7zZUPb56Oza1t6Vvlgl/QwhoWfN1Xl42xJl2+s6KRW RIB29gy6UP90YdSVJg24ufhpAF8tNiH469fadvyujisbNPerE+O8v2E12PeuK2k/0+4m nsHSpmTVF66ZAxERe84P/bdrkEKmqg1etoh7tX6E1ukDKz8KdIOrRrR8CVs+PghwTR9y pDaZeoaRDjpiiec3XqsWqI8M41aTlBSw113xRyyeSey/n0H9O9L+xdAm9MGiEWkdgbzt RdnA== X-Gm-Message-State: AO0yUKXj8dr5Mf77EZ3GHKg1lugo2MjODMX0VvKFDGg4HGHdmDN3IxS5 IwfhdSnMLTnNJFp32w9E4o0= X-Google-Smtp-Source: AK7set+JXFrURQfeXo4giun6cXyoIz7ajUrc8QD9TTqDu7fnbzAcOFVVieNIVgiAB4AakpZU9C/hjQ== X-Received: by 2002:a62:1d4a:0:b0:58d:a981:b97c with SMTP id d71-20020a621d4a000000b0058da981b97cmr1701979pfd.34.1675252307320; Wed, 01 Feb 2023 03:51:47 -0800 (PST) Received: from min-iamroot ([210.91.70.133]) by smtp.gmail.com with ESMTPSA id g20-20020a056a001a1400b0058bc60dd98dsm4123488pfv.23.2023.02.01.03.51.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Feb 2023 03:51:46 -0800 (PST) Date: Wed, 1 Feb 2023 20:51:42 +0900 From: Hyunmin Lee To: Andrew Morton , Uladzislau Rezki , Christoph Hellwig Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Gwan-gyeong Mun , Jeungwoo Yoo , Sangyun Kim , Mike Rapoport , Christophe Leroy Subject: [PATCH v4] mm/vmalloc: replace BUG_ON to a simple if statement Message-ID: <20230201115142.GA7772@min-iamroot> MIME-Version: 1.0 Content-Disposition: inline Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" As per the coding standards, in the event of an abnormal condition that should not occur under normal circumstances, the kernel should attempt recovery and proceed with execution, rather than halting the machine. Specifically, in the alloc_vmap_area() function, use a simple if() instead of using BUG_ON() halting the machine. Co-Developed-by: Gwan-gyeong Mun Co-Developed-by: Jeungwoo Yoo Co-Developed-by: Sangyun Kim Signed-off-by: Hyunmin Lee Signed-off-by: Gwan-gyeong Mun Signed-off-by: Jeungwoo Yoo Signed-off-by: Sangyun Kim Cc: Hyeonggon Yoo <42.hyeyoo@gmail.com> Reviewed-by: Christophe Leroy Reviewed-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> Reviewed-by: Mike Rapoport (IBM) Reviewed-by: Uladzislau Rezki (Sony) --- v1->v2 : Add commit description v2->v3 : Change WARN_ON() to if() v3->v4 : Use only one if() for three conditions --- mm/vmalloc.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 74afa2208558..3b7e8856be35 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -1587,9 +1587,8 @@ static struct vmap_area *alloc_vmap_area(unsigned lon= g size, int purged =3D 0; int ret; =20 - BUG_ON(!size); - BUG_ON(offset_in_page(size)); - BUG_ON(!is_power_of_2(align)); + if (unlikely(!size || offset_in_page(size) || !is_power_of_2(align))) + return ERR_PTR(-EINVAL); =20 if (unlikely(!vmap_initialized)) return ERR_PTR(-EBUSY); --=20 2.25.1