Received: by 2002:a05:6358:7058:b0:131:369:b2a3 with SMTP id 24csp6990110rwp; Tue, 18 Jul 2023 08:30:15 -0700 (PDT) X-Google-Smtp-Source: APBJJlFR5ynkF5YkNW+2+etuWlS+jByNj55WN8kTwo1yODUERZep9bYCYIlZ7p5IbfnyKQcvB1cG X-Received: by 2002:a05:6a00:1827:b0:684:aa3e:7bf3 with SMTP id y39-20020a056a00182700b00684aa3e7bf3mr16382390pfa.31.1689694215498; Tue, 18 Jul 2023 08:30:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689694215; cv=none; d=google.com; s=arc-20160816; b=t5C26HXxZnP2VEDccReoCxmTb7GjrDrHg8dadK8P9/ZVs8Q94qyFAqW/t8NMVZx7bH rv+G5HJ+GuWsp31CneEPFPGmZtSpWDY4LvQDqhGRpjbpSI0gYDMQBbu94Maeqc4TkQ5f dCAy7B81upBr+aDu1faINdlSr2jmV9J3LlFjm6WuI468+Wcplsx1G+2IitRRfaEunWMc fBuG8bleXApH9V6JrSbjKHclLpLYzM/4EL0PPxDsjoibgR+GpWU9u752l4O5L1t+QeaY zHirdLAXzkph1Q6WduCCkKwGH4Tz4QUjmUYbV29tHvVfbkSY075nQfIX0eHjEQoaE6t1 fJWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=JNQ6/gc5vfGP1wHAlH0r+RXd8q2VGkAv8eOnlipw9dY=; fh=tOF+Pjgp3zCZv2XPcuJMYaVHDPfOtdRAg+nAdwKSrYo=; b=uYnVUP4aHGuWq8CtqRCyiG78OYfBlIj2P6+cPZgapnsNG85LjrmhWHH2nQRRk7qYHU EJfp1VcG/0tH3BQxq8evGIvMhUhnu1D0OpeZ5FliBO5cBMedIPnY6IxxEOy7kZDqL1Mm 2GNs5/eckDWgeJCmPqL57hPXN113QPM49UysYNTZXXVKzvRh/O6tUuhw/3LRQ2V/ikg3 xh4Cb10yrrbIw7CBWAGfp2igwjmvQKh8CJ1IKj8E29KiMNsQijAo2XvA5lX8OZvDCuGS CYIEWmznrxveXEINGUTRJRG3kDUfv60y+VaSd1t08QMKwPYI7n5h9clceR+9Z5CiLV6m 8Jhg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@googlemail.com header.s=20221208 header.b=CV3ZKEqZ; 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; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=googlemail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bw27-20020a056a00409b00b006665f0400a7si1704152pfb.197.2023.07.18.08.30.02; Tue, 18 Jul 2023 08:30:15 -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; dkim=pass header.i=@googlemail.com header.s=20221208 header.b=CV3ZKEqZ; 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; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=googlemail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233331AbjGRPK3 (ORCPT + 99 others); Tue, 18 Jul 2023 11:10:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47410 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231501AbjGRPK1 (ORCPT ); Tue, 18 Jul 2023 11:10:27 -0400 Received: from mail-oi1-x22f.google.com (mail-oi1-x22f.google.com [IPv6:2607:f8b0:4864:20::22f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DBB66171A; Tue, 18 Jul 2023 08:10:26 -0700 (PDT) Received: by mail-oi1-x22f.google.com with SMTP id 5614622812f47-3a3efee1d44so4313944b6e.3; Tue, 18 Jul 2023 08:10:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20221208; t=1689693026; x=1692285026; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=JNQ6/gc5vfGP1wHAlH0r+RXd8q2VGkAv8eOnlipw9dY=; b=CV3ZKEqZWXlKDj1uZ5AVabNJrLd2Eg+AK05DTeuCA+f5zQEMBxYFca0FBmwFTkHcK7 3MlmM5lZTYfktW0UF6SbvxyLoTf1TuBv6ZgILXcv8VOuLPDPduWcM5h/tDvlr0ypg5/q smpype/Nr37YgegIwLWzCYWecOynGyznMId0h5Yu07QY99zOYbeNAPhOMiBJCFwdHIg1 os2djPgcqhMTtJsBcOr448wqDatFIAol+X13i+uIjse3EoWbTEh8eawvWBB+t+x4nBHX AwOdbRVZlXT+Nd0dKShzXbdAGtZ+nCvMDk4XVNYGLQfeaKo9QT1PyMpwDQCP/QPpHn7V zClA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689693026; x=1692285026; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=JNQ6/gc5vfGP1wHAlH0r+RXd8q2VGkAv8eOnlipw9dY=; b=LRA0oZN4mUBW4jmsOjoQ2EWbta78mTwljgAYIai1i8OEqEOAEcej0/jugixJtQnbJh P+6ZhYRp3LdX7pcnFhgA+hFRz3Kdo/APSJV+0WNFofoQCfdf4ngsC3XTBLKVOBCM36lz 8ujR2MX2n4SrtplsBlPKkNpMPgZZF8DVSgRWiDdWpKk479KXg0UOXyiZ/r7e57NzkS0R kTrGFm5b2UH7uJSFMj6jyucrTQ4vFH/HqF1ZdChzzLcIV3Yn0bsBFn9Ns4iRG+CGOlf1 E1yJb4S3trM7GXXGHAFSFEq8tfmejaOzxUH/QxnlSpj1M2o4ezRMxsMePL+pyBlB4dzk 9Jjw== X-Gm-Message-State: ABy/qLb0JpLIuAhc47AZr08INcMG88PRUX+b51N3aTeoKz8mPAuBFxiC ews8AYOnQ6swl2gsDjFLYBQTu4xWaKdujOAs13tenJbNcBEzWA== X-Received: by 2002:a05:6358:7f0d:b0:134:c37f:4b60 with SMTP id p13-20020a0563587f0d00b00134c37f4b60mr11494410rwn.32.1689693025766; Tue, 18 Jul 2023 08:10:25 -0700 (PDT) MIME-Version: 1.0 References: <20230712143831.120701-1-wangkefeng.wang@huawei.com> <20230712143831.120701-2-wangkefeng.wang@huawei.com> In-Reply-To: <20230712143831.120701-2-wangkefeng.wang@huawei.com> From: =?UTF-8?Q?Christian_G=C3=B6ttsche?= Date: Tue, 18 Jul 2023 17:10:14 +0200 Message-ID: Subject: Re: [PATCH 1/5] mm: introduce vma_is_stack() and vma_is_heap() To: Kefeng Wang Cc: Andrew Morton , amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-perf-users@vger.kernel.org, selinux@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE, URIBL_BLOCKED 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 On Wed, 12 Jul 2023 at 16:25, Kefeng Wang wrote: > > Introduce the two helpers for general use. > > Signed-off-by: Kefeng Wang > --- > include/linux/mm.h | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index 1462cf15badf..0bbeb31ac750 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -926,6 +926,18 @@ static inline bool vma_is_anonymous(struct vm_area_struct *vma) > return !vma->vm_ops; > } > > +static inline bool vma_is_heap(struct vm_area_struct *vma) What about declaring the parameters const to document in code these functions do not modify any state, and allow callers to pass pointers to const? > +{ > + return vma->vm_start <= vma->vm_mm->brk && > + vma->vm_end >= vma->vm_mm->start_brk; > +} > + > +static inline bool vma_is_stack(struct vm_area_struct *vma) > +{ > + return vma->vm_start <= vma->vm_mm->start_stack && > + vma->vm_end >= vma->vm_mm->start_stack; > +} > + > static inline bool vma_is_temporary_stack(struct vm_area_struct *vma) > { > int maybe_stack = vma->vm_flags & (VM_GROWSDOWN | VM_GROWSUP); > -- > 2.41.0 >