From patchwork Mon Jun 21 05:11:49 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gavin Shan X-Patchwork-Id: 12333765 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=-8.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS 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 CCFF8C49361 for ; Mon, 21 Jun 2021 03:11:27 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 5DD0361151 for ; Mon, 21 Jun 2021 03:11:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5DD0361151 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 80FA06B006E; Sun, 20 Jun 2021 23:11:26 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7BFF46B0072; Sun, 20 Jun 2021 23:11:26 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 661596B0074; Sun, 20 Jun 2021 23:11:26 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0191.hostedemail.com [216.40.44.191]) by kanga.kvack.org (Postfix) with ESMTP id 356306B006E for ; Sun, 20 Jun 2021 23:11:26 -0400 (EDT) Received: from smtpin23.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id C7C5F10F40 for ; Mon, 21 Jun 2021 03:11:25 +0000 (UTC) X-FDA: 78276255330.23.CA5B5B7 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by imf28.hostedemail.com (Postfix) with ESMTP id 1DE86200113B for ; Mon, 21 Jun 2021 03:11:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1624245084; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i27wgNcN3kQte2V8oJS17CMizgvdFEAQpqjhBT32l/w=; b=YtpzskQPHwoNmOF53Oxc4kDnLtQEesqsTTTWdhuWXpuXcMaa8ZKLJ3F8Gu3DmoS/KhzVsm GPTHNx9CNoW8342SrcSE+aFv6EQyTg3WgmsToN+C3l7eVM7MlMugtW0P1mXqkKanunjIXd 61TDrDZEPbjLtMzzXruOeG+y/bH0VgY= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-253-HHjuNSRUNsuQQwdiEylpHA-1; Sun, 20 Jun 2021 23:11:23 -0400 X-MC-Unique: HHjuNSRUNsuQQwdiEylpHA-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 729CE100B3B2; Mon, 21 Jun 2021 03:11:21 +0000 (UTC) Received: from gshan.redhat.com (vpn2-54-84.bne.redhat.com [10.64.54.84]) by smtp.corp.redhat.com (Postfix) with ESMTP id BE1CA60C9D; Mon, 21 Jun 2021 03:11:14 +0000 (UTC) From: Gavin Shan To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, alexander.duyck@gmail.com, akpm@linux-foundation.org, david@redhat.com, anshuman.khandual@arm.com, catalin.marinas@arm.com, will@kernel.org, shan.gavin@gmail.com Subject: [PATCH 0/3] mm/page_reporting: Make page reporting work on arm64 with 64KB page size Date: Mon, 21 Jun 2021 13:11:49 +0800 Message-Id: <20210621051152.305224-1-gshan@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 1DE86200113B Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=YtpzskQP; spf=none (imf28.hostedemail.com: domain of gshan@redhat.com has no SPF policy when checking 216.205.24.124) smtp.mailfrom=gshan@redhat.com; dmarc=pass (policy=none) header.from=redhat.com X-Stat-Signature: id8w616nzy7fujc7bd8yshu5oxrefkyc X-HE-Tag: 1624245081-811083 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: The page reporting threshold is currently equal to @pageblock_order, which is 13 and 512MB on arm64 with 64KB base page size selected. The page reporting won't be triggered if the freeing page can't come up with a free area like that huge. The condition is hard to be met, especially when the system memory becomes fragmented. This series intends to solve the issue by having page reporting threshold as 5 (2MB) on arm64 with 64KB base page size. The patches are organized as: PATCH[1/3] introduces variable (@page_reporting_order) to replace original macro (PAGE_REPORTING_MIN_ORDER). It's also exported so that it can be adjusted at runtime. PATCH[2/3] renames PAGE_REPORTING_MIN_ORDER with PAGE_REPORTING_ORDER and allows architecture to specify its own version. PATCH[3/3] defines PAGE_REPORTING_ORDER to 5, corresponding to 2MB in size, on arm64 when 64KB base page size is selected. It's still same as to @pageblock_order for other architectures and cases. Gavin Shan (3): mm/page_reporting: Allow to set reporting order mm/page_reporting: Allow architecture to select reporting order arm64: mm: Specify smaller page reporting order Documentation/admin-guide/kernel-parameters.txt | 6 ++++++ arch/arm64/include/asm/page.h | 13 +++++++++++++ mm/page_reporting.c | 8 ++++++-- mm/page_reporting.h | 10 +++++++--- 4 files changed, 32 insertions(+), 5 deletions(-)