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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id E5544C433EF for ; Fri, 15 Apr 2022 06:26:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5FEB36B0071; Fri, 15 Apr 2022 02:26:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5AE856B0073; Fri, 15 Apr 2022 02:26:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 49DB06B0074; Fri, 15 Apr 2022 02:26:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (relay.hostedemail.com [64.99.140.25]) by kanga.kvack.org (Postfix) with ESMTP id 3B6076B0071 for ; Fri, 15 Apr 2022 02:26:23 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay11.hostedemail.com (Postfix) with ESMTP id E7A718165A for ; Fri, 15 Apr 2022 06:26:22 +0000 (UTC) X-FDA: 79358129004.20.64A9F89 Received: from mail-vs1-f45.google.com (mail-vs1-f45.google.com [209.85.217.45]) by imf31.hostedemail.com (Postfix) with ESMTP id 7CBDA20004 for ; Fri, 15 Apr 2022 06:26:22 +0000 (UTC) Received: by mail-vs1-f45.google.com with SMTP id f32so6419651vsv.1 for ; Thu, 14 Apr 2022 23:26:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=r4RShQi9icr7wSxQlh0D5L5Evfs0VvFyTLZdHUvu9L8=; b=sBwypCjbQBF+/WnqvmCEXoT4JJbp6AciTPTzeArpyy83AZyGtxPkBZkpF85m+7fkMn kPx4nv3WZ5qyoxA/4xAgWEUyUcZXrS7bf5+Eisexvk/XGpQV+k7wpEcVUB0KMptK0UZK 3yNAS7Z6y7+iNRD97p4PZILtxALsN4zNaC882fCMTlwjDoLPNjZ2GAqPEjJLPz+K3I6h l/ye5pX+ePxFIAPQxK8F3iX6fMxyHcEhpSeUCtlMdGZNny74nOsnP22k6qPrMTvdwOew /t0cYCS21NKTCj6temp6PIHBKX94uBS+QcaG0ghNHJO2Pimg8PGEILuUamsf74rauMez mMVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=r4RShQi9icr7wSxQlh0D5L5Evfs0VvFyTLZdHUvu9L8=; b=5aaxfNP2K6I3RC9nAz7r5PvfaxglKyJg9Wcd7waDUs+GDVyJ0xsPErT7srgZ/5VJ6t pqwnzxey3JwcNLiH7Os2TUT7VGl8Of+Sqb7ISvCZN6z6RodEfbJbHr9h4DL/+a6xR2kw JBTi9YGdaCUAavOWLnprZ4IYQPzKAz7v3E8Lq0emOdQCfaaBBJjtJfZTb3VfOWSDNrvM mXOq5TdK4SHG/sJrxsi8C1kuUf2gB1zv/0V9SobOg4qtBMlEvIA7OwYlPtwNOVdIaNxL nChMDCBMUwruJXA3KqgQjpLiHA9esg9836gR4zGY6uJqZwCAFhmwzKEz9TzwgVSUSrZq wEoA== X-Gm-Message-State: AOAM530N8FZsZg08dOidqMUhh3V6Y0AsMsLYf8s1B07nYIu9kht6Nccr xV9XCWR0efaMv3fJWJmLpFf3jMkjO5vPjuVSw8RuEA== X-Google-Smtp-Source: ABdhPJxMuVrw6CCgd27RYTqBzChXKJNxGSOn9st5mfjSU3MHVTrF9aapaud6/EVQrwuLVccLBrOGNcvr5Ir3CrMKYXc= X-Received: by 2002:a05:6102:5cc:b0:320:9bd2:3823 with SMTP id v12-20020a05610205cc00b003209bd23823mr2694438vsf.81.1650003981638; Thu, 14 Apr 2022 23:26:21 -0700 (PDT) MIME-Version: 1.0 References: <20220407031525.2368067-1-yuzhao@google.com> <20220407031525.2368067-9-yuzhao@google.com> <20220411191621.0378467ad99ebc822d5ad005@linux-foundation.org> <20220414185654.e7150bcbe859e0dd4b9c61af@linux-foundation.org> In-Reply-To: <20220414185654.e7150bcbe859e0dd4b9c61af@linux-foundation.org> From: Yu Zhao Date: Fri, 15 Apr 2022 00:25:45 -0600 Message-ID: Subject: Re: [PATCH v10 08/14] mm: multi-gen LRU: support page table walks To: Andrew Morton Cc: Stephen Rothwell , Linux-MM , Andi Kleen , Aneesh Kumar , Barry Song <21cnbao@gmail.com>, Catalin Marinas , Dave Hansen , Hillf Danton , Jens Axboe , Jesse Barnes , Johannes Weiner , Jonathan Corbet , Linus Torvalds , Matthew Wilcox , Mel Gorman , Michael Larabel , Michal Hocko , Mike Rapoport , Rik van Riel , Vlastimil Babka , Will Deacon , Ying Huang , Linux ARM , "open list:DOCUMENTATION" , linux-kernel , Kernel Page Reclaim v2 , "the arch/x86 maintainers" , Brian Geffon , Jan Alexander Steffens , Oleksandr Natalenko , Steven Barrett , Suleiman Souhlal , Daniel Byrne , Donald Carr , =?UTF-8?Q?Holger_Hoffst=C3=A4tte?= , Konstantin Kharlamov , Shuang Zhai , Sofia Trinh , Vaibhav Jain Content-Type: text/plain; charset="UTF-8" Authentication-Results: imf31.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=sBwypCjb; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf31.hostedemail.com: domain of yuzhao@google.com designates 209.85.217.45 as permitted sender) smtp.mailfrom=yuzhao@google.com X-Rspam-User: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 7CBDA20004 X-Stat-Signature: rqsz8orzgbq7zxg7u6qepdzjcoik9yym X-HE-Tag: 1650003982-536363 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Thu, Apr 14, 2022 at 7:57 PM Andrew Morton wrote: > > On Thu, 14 Apr 2022 19:14:54 -0600 Yu Zhao wrote: > > > On Mon, Apr 11, 2022 at 8:16 PM Andrew Morton wrote: > > > > > > On Wed, 6 Apr 2022 21:15:20 -0600 Yu Zhao wrote: > > > > > > > +static void update_batch_size(struct lru_gen_mm_walk *walk, struct folio *folio, > > > > + int old_gen, int new_gen) > > > > +{ > > > > + int type = folio_is_file_lru(folio); > > > > + int zone = folio_zonenum(folio); > > > > + int delta = folio_nr_pages(folio); > > > > + > > > > + VM_BUG_ON(old_gen >= MAX_NR_GENS); > > > > + VM_BUG_ON(new_gen >= MAX_NR_GENS); > > > > > > General rule: don't add new BUG_ONs, because they crash the kenrel. > > > It's better to use WARN_ON or WARN_ON_ONCE then try to figure out a way > > > to keep the kernel limping along. At least so the poor user can gather logs. > > > > These are VM_BUG_ONs, which are BUILD_BUG_ONs except for (mostly MM) developers. > > I'm told that many production builds enable runtime VM_BUG_ONning. Nobody wants to debug VM in production. Some distros that offer both the latest/LTS kernels do enable CONFIG_DEBUG_VM in the former so the latter can have better test coverage when it becomes available. Do people use the former in production? Absolutely, otherwise we won't have enough test coverage. Are we supposed to avoid CONFIG_DEBUG_VM? I don't think so, because it defeats the purpose of those distros enabling it in the first place. The bottomline is that none of RHEL 8.5, SLES 15, Debian 11 enables CONFIG_DEBUG_VM.