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 X-Spam-Level: X-Spam-Status: No, score=-9.6 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B0CD1C433F5 for ; Sat, 18 Sep 2021 07:03:40 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 4DFB3603E5 for ; Sat, 18 Sep 2021 07:03:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 4DFB3603E5 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id A5EDC900002; Sat, 18 Sep 2021 03:03:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A0EE56B0072; Sat, 18 Sep 2021 03:03:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8AF70900002; Sat, 18 Sep 2021 03:03:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0022.hostedemail.com [216.40.44.22]) by kanga.kvack.org (Postfix) with ESMTP id 78D036B0071 for ; Sat, 18 Sep 2021 03:03:39 -0400 (EDT) Received: from smtpin23.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 6B8D0181B0499 for ; Sat, 18 Sep 2021 07:03:38 +0000 (UTC) X-FDA: 78599803716.23.49630B0 Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by imf12.hostedemail.com (Postfix) with ESMTP id 1C39F10000BA for ; Sat, 18 Sep 2021 07:03:37 +0000 (UTC) Received: by mail-pl1-f174.google.com with SMTP id j14so526499plx.4 for ; Sat, 18 Sep 2021 00:03:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=A4v+dkQ3nEwk7aTsenjY7jfV6CXN9c6u3qns+dC7Kv4=; b=ERI0SGBrOyrT3lrOReuSQdqCybdiK86t32tM8gdxIhAiiQ6X+AK9pfdMlL8maNyDmi OtiJHJ/eSj/Snk7D+P4n4vFyDvkJIJqC5A0ws7Nns0da+WmuW7YLrGsOW1GJ6mle8HZ0 fiXigC+7w6UCeO6VoMWmqdKGr7AYN1IPKzaB9YfixfTORcMwN8xf+n8Hs5ZB/YqDM5I0 lHQwNIFFIwLZlW51j1G+hPXhtrX9Jf09R/Vqs0u9NbWm9gcUywB8sTs9B/vCNoYdIAao gxPzckbC+t+iGRsSlHgeM8tusi2k2uHGbqMedAPa/NQp3/FxZLUW5j8dG0JinrM+JYQ3 PP2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=A4v+dkQ3nEwk7aTsenjY7jfV6CXN9c6u3qns+dC7Kv4=; b=UnyRqIksngIeIQRQAmaqnjcht7HioLYSkIIqgPSLpLMSBZgXuC5N2OIQkplEMpE5Jg 8XHudhHtFcwa54F5Wk45hKmUE+adJX9hBGGyveN+gCMugTPflhuZZZlaCahEkWKFRPGR KQiPtsidCZx+FW16p9HoyQ/o3p2eh+zV1wyNqsLsaavTU93GA/6tveEjViaUWaZurk4U tOFKbTInF69mlERY/TwpaqjrZTaTfjsSuJcLHOe1E1Y88UnSyFjuew2vlgdZ0LAxQkB+ 1NJh8h7h1pZHFcc5bT5b503sGwNp3FA6qKXkmO7+FtQ+l3uBf8pDpSbQ9BvSeS1D3b/7 9GXw== X-Gm-Message-State: AOAM530KWHgx4oc6AvwGHevKqhy3VlO+76DR7hi696OhWYEGeY8xiIFe 5lY2WTxDMya355F4kR3SdKs= X-Google-Smtp-Source: ABdhPJx8cInDy0dtT23KUsIM8c6tjSIu4iqF07ReQBQINQvuqUza+FVFbeCPz3bqBl04C+pULzfONg== X-Received: by 2002:a17:902:b188:b029:11b:1549:da31 with SMTP id s8-20020a170902b188b029011b1549da31mr13110506plr.7.1631948616933; Sat, 18 Sep 2021 00:03:36 -0700 (PDT) Received: from [192.168.30.17] ([173.248.225.217]) by smtp.gmail.com with ESMTPSA id fh3sm12185158pjb.8.2021.09.18.00.03.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 18 Sep 2021 00:03:36 -0700 (PDT) Subject: Re: [PATCH] mm/debug: sync up latest migrate_reason to migrate_reason_names To: John Hubbard , "Huang, Ying" Cc: Andrew Morton , Pavel Tatashin , Oscar Salvador , Yang Shi , Zi Yan , Dave Hansen , linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20210917061432.323777-1-o451686892@gmail.com> <871r5nptt7.fsf@yhuang6-desk2.ccr.corp.intel.com> <89a06743-b37a-b85a-1c04-5d863a1d2cb4@gmail.com> <3cf9bb7f-618e-4e4b-32d6-4d3c207b9a9a@nvidia.com> From: Weizhao Ouyang Message-ID: Date: Sat, 18 Sep 2021 15:03:32 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: <3cf9bb7f-618e-4e4b-32d6-4d3c207b9a9a@nvidia.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US X-Stat-Signature: un3j8gucbf7k95akjrussdf1en9j6etc Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=ERI0SGBr; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf12.hostedemail.com: domain of o451686892@gmail.com designates 209.85.214.174 as permitted sender) smtp.mailfrom=o451686892@gmail.com X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 1C39F10000BA X-HE-Tag: 1631948617-993262 Content-Transfer-Encoding: quoted-printable 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 2021/9/18 08:30, John Hubbard wrote: > On 9/17/21 02:48, Weizhao Ouyang wrote: > ... >>>> =C2=A0 const struct trace_print_flags pageflag_names[] =3D { >>> Good catch!=C2=A0 Thanks! >>> >>> Reviewed-by: "Huang, Ying" >>> >>> It may be better to use BUILD_BUG_ON() to capture similar issue earli= er? >> >> How about move migrate_reason_names into mm/page_owner.c and make it s= ize uninitialized(get rid of MR_TYPES). >> Then use BUILD_BUG_ON(ARRAY_SIZE(migrate_reason_names !=3D MR_TYPES)) = to check it? >> > A couple more thoughts: > > 1) From a naming and location point of view, migrate_reason_names[] > really doesn't want to be located in page_owner.c. Commit 7cd12b4abfd2 ("mm, page_owner: track and print last migrate reason= ") imported migrate_reason_names for page owner in mm/debug.c, and it only u= sed by page_owner.c now, maybe it's not so sensitive or we can rename it. > 2) There are actually three places to synchronize, not two. And in fact= , > sure enough, the MR_CONTIG_RANGE is already drifting out of synch: it > has a string of "cma" in mm/debug.c, versus "contig_range" in > include/trace/events/migrate.h. Yes, "cma" is out of synch after commit 310253514bbf ("mm/migrate: rename migration reason MR_CMA to MR_CONTIG_RANGE"). Update it to "contig_range"= in migrate_reason_names can fix up it. > So...is it possible to use the macro and enums in > include/trace/events/migrate.h, to define the connection between > migrate_reason and a string, everywhere? As for synchronization, tracepoint use TRACE_DEFINE_ENUM() macro to map e= nums. In general, this kind of synch between subsystem and trace event subsyste= m is mostly conscious. So it more likes that include/linux/migrate.h is connec= ted to include/trace/events/migrate.h and migrate_reason_names, the others hasn'= t relationship except same reason string. =C2=A0 Anyway, I didn't find a simply way the build the "everywhere" relationshi= p behind the packaged TRACE_DEFINE_ENUM , what do you think. Thanks, Weizhao