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 B0248C433EF for ; Thu, 10 Feb 2022 14:39:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id DC28D6B0071; Thu, 10 Feb 2022 09:39:46 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D70826B0083; Thu, 10 Feb 2022 09:39:46 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C38F46B0085; Thu, 10 Feb 2022 09:39:46 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0209.hostedemail.com [216.40.44.209]) by kanga.kvack.org (Postfix) with ESMTP id B537F6B0071 for ; Thu, 10 Feb 2022 09:39:46 -0500 (EST) Received: from smtpin25.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 64FFA180AD837 for ; Thu, 10 Feb 2022 14:39:46 +0000 (UTC) X-FDA: 79127129172.25.4ACBDD2 Received: from mail-il1-f172.google.com (mail-il1-f172.google.com [209.85.166.172]) by imf21.hostedemail.com (Postfix) with ESMTP id E78941C0010 for ; Thu, 10 Feb 2022 14:39:45 +0000 (UTC) Received: by mail-il1-f172.google.com with SMTP id e8so4448248ilm.13 for ; Thu, 10 Feb 2022 06:39:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=google; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=iDsPUC9DgyeG7Uucn2JKUAeTRzoT+yJt+cSDVQmW8p8=; b=WMk422H52Ffqw8t01qYFjj1uzXht4P7spwzhMz1JARc5qgbQYyxf8oLIts34y85Qho 3sHj0TkPXQjH0kpDGmAV5/q70YmZ26tEJQxfEvDAWys7c9uxM7uVo1N/X27uDubo3baO kb5OIQM8EcvuertJj0MYbCRcD7p4RT2Uo1gDI= 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-language :content-transfer-encoding; bh=iDsPUC9DgyeG7Uucn2JKUAeTRzoT+yJt+cSDVQmW8p8=; b=AufzhP4H+n7ZCqb1UxYz1WIR2+0IPwe/tu9ibvXr27jehII1huck2r95BL/AcqDDoJ 5CymseIlx221lPNEJtcb8eHK/lbwwFo/HFnBqYQi/TAz1pAfxu/TkwKRtLUZPUpbg+1C k6VqCEVdpMKx+HuGlYhjSwcuhcYGQceiLZ2k9QWhym0MoTw/geZDuIB0QSlz+qbwghFO iyvI8NiOR0mXNw1ptMaGMTeLnM6DIghOgo4uZjVuwjPUw2mmNK4R1J6uRbrJAZ9g8K0O eGKXxQraWgPWVPCrhGVCcMwdCy20sUXCzTzAe8jqjmome4Tao1ZQGbhat7bgc8z/oyxM ixIQ== X-Gm-Message-State: AOAM530M/z9fjMqOnpLujlZrpi2jYGqKBIp9x/JyDNQxVmjMmQmaBZ60 cQdS4NRKantkwX0ipBBaZz6J5w== X-Google-Smtp-Source: ABdhPJyuOKzL/10L9HIjJuQx1QoFStwifNXwHB3cGWaLhTqHMDEZDQGzid2+gDAG/I5Psy2xQ05RzA== X-Received: by 2002:a92:ca0f:: with SMTP id j15mr4199603ils.212.1644503985180; Thu, 10 Feb 2022 06:39:45 -0800 (PST) Received: from [192.168.1.128] ([71.205.29.0]) by smtp.gmail.com with ESMTPSA id c13sm1188138ilq.50.2022.02.10.06.39.44 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 10 Feb 2022 06:39:44 -0800 (PST) Subject: Re: [PATCH] selftest/vm: Use correct PAGE_SHIFT value for ppc64 To: "Aneesh Kumar K.V" , linux-mm@kvack.org, akpm@linux-foundation.org Cc: mpe@ellerman.id.au, linuxppc-dev@lists.ozlabs.org, Shuah Khan , Shuah Khan References: <20220209154301.42024-1-aneesh.kumar@linux.ibm.com> <84508bb4-9400-f429-e6d2-d8b05a1e8368@linuxfoundation.org> <87zgmz9x7e.fsf@linux.ibm.com> From: Shuah Khan Message-ID: Date: Thu, 10 Feb 2022 07:39:44 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <87zgmz9x7e.fsf@linux.ibm.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Stat-Signature: pxsnidnqszccgme7bef3ipusrqo41n81 X-Rspam-User: Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=linuxfoundation.org header.s=google header.b=WMk422H5; dmarc=pass (policy=none) header.from=linuxfoundation.org; spf=pass (imf21.hostedemail.com: domain of skhan@linuxfoundation.org designates 209.85.166.172 as permitted sender) smtp.mailfrom=skhan@linuxfoundation.org X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: E78941C0010 X-HE-Tag: 1644503985-301725 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 2/9/22 9:12 PM, Aneesh Kumar K.V wrote: > Shuah Khan writes: > >> On 2/9/22 8:43 AM, Aneesh Kumar K.V wrote: >>> Keep it simple by using a #define and limiting hugepage size to 2M. >>> This keeps the test simpler instead of dynamically finding the page size >>> and huge page size. >>> >>> Without this tests are broken w.r.t reading /proc/self/pagemap >>> >>> if (pread(pagemap_fd, ent, sizeof(ent), >>> (uintptr_t)ptr >> (PAGE_SHIFT - 3)) != sizeof(ent)) >>> err(2, "read pagemap"); >>> >>> Cc: Shuah Khan >>> Signed-off-by: Aneesh Kumar K.V >>> --- >>> tools/testing/selftests/vm/ksm_tests.c | 8 ++++++++ >>> tools/testing/selftests/vm/transhuge-stress.c | 8 ++++++++ >>> 2 files changed, 16 insertions(+) >>> >>> diff --git a/tools/testing/selftests/vm/ksm_tests.c b/tools/testing/selftests/vm/ksm_tests.c >>> index 1436e1a9a3d3..8200328ff018 100644 >>> --- a/tools/testing/selftests/vm/ksm_tests.c >>> +++ b/tools/testing/selftests/vm/ksm_tests.c >>> @@ -22,8 +22,16 @@ >>> #define KSM_MERGE_ACROSS_NODES_DEFAULT true >>> #define MB (1ul << 20) >>> >>> +#ifdef __powerpc64__ >>> +#define PAGE_SHIFT 16 >>> +/* >>> + * This will only work with radix 2M hugepage size >>> + */ >>> +#define HPAGE_SHIFT 21 >>> +#else >>> #define PAGE_SHIFT 12 >>> #define HPAGE_SHIFT 21 >>> +#endif >>> >>> #define PAGE_SIZE (1 << PAGE_SHIFT) >>> #define HPAGE_SIZE (1 << HPAGE_SHIFT) >>> diff --git a/tools/testing/selftests/vm/transhuge-stress.c b/tools/testing/selftests/vm/transhuge-stress.c >>> index 5e4c036f6ad3..f04c8aa4bcf6 100644 >>> --- a/tools/testing/selftests/vm/transhuge-stress.c >>> +++ b/tools/testing/selftests/vm/transhuge-stress.c >>> @@ -16,8 +16,16 @@ >>> #include >>> #include >>> >>> +#ifdef __powerpc64__ >>> +#define PAGE_SHIFT 16 >>> +/* >>> + * This will only work with radix 2M hugepage size >>> + */ >>> +#define HPAGE_SHIFT 21 >> >> Why not have this is in common code? > > Can you suggest where I can move that. We also have helper functions > like allocate_transhuge() duplicated between tests. I didn't find > libutil.a or anything similar supported by the selftets build. > >> I noticed that HPAGE_SHIFT is defined in #ifdef __powerpc64__ block as well as #else. I am asking is it necessary to be part of both blocks. +#ifdef __powerpc64__ +#define PAGE_SHIFT 16 +/* + * This will only work with radix 2M hugepage size + */ +#define HPAGE_SHIFT 21 --- this one +#else #define PAGE_SHIFT 12 #define HPAGE_SHIFT 21 --- this one +#endif Hope this helps. thanks, -- Shuah