From patchwork Thu Nov 10 11:31:30 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chao Xu X-Patchwork-Id: 13038718 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 1BC65C4332F for ; Thu, 10 Nov 2022 11:31:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 522226B0071; Thu, 10 Nov 2022 06:31:49 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 4D1C06B0072; Thu, 10 Nov 2022 06:31:49 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3C0786B0074; Thu, 10 Nov 2022 06:31:49 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 2D4F56B0071 for ; Thu, 10 Nov 2022 06:31:49 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 00831A1453 for ; Thu, 10 Nov 2022 11:31:48 +0000 (UTC) X-FDA: 80117317896.06.FAF491F Received: from mail-pl1-f195.google.com (mail-pl1-f195.google.com [209.85.214.195]) by imf18.hostedemail.com (Postfix) with ESMTP id 99ADB1C0007 for ; Thu, 10 Nov 2022 11:31:48 +0000 (UTC) Received: by mail-pl1-f195.google.com with SMTP id l2so1158879pld.13 for ; Thu, 10 Nov 2022 03:31:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Pzfo2COKuQMunTGeb4PhEUp6IKXwGgGtyosnQ14pUIg=; b=XIUBsLhHEkyqVyhMi4qLVUwFKwPhOYMpXqMRU4YNe83FqVQvAz9iMze2c4WvHoHvqP qBcEsMujHT+uNwn/Q4hT8XVwrQL7pTMHAyE8StE/uGtrdVkKgvmyNectYC1G5vk6/Z79 GdqEPzmsa0OyTF5Xf/Cye6674DeeGOjtpvIfjFCiQ5UTLkJ8IOkCwF8B1GdGgqrSOZjV zfc7bvcSOgZoInMc7spCKFyoGKBFFc9TYZYfGEv2qv4ySkm+Q/M/mnHuI0ha/XUObKeo aRe1A0ZIuKTv/QzpmsOKD/tpgGtkMOWhz6vHO+5BiqdKu3J6/aty6K8S4yjcMxFeE9R5 5llg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Pzfo2COKuQMunTGeb4PhEUp6IKXwGgGtyosnQ14pUIg=; b=6qk1xZMUF4uIgelFrydLz3hU36WqsKyfP8VJKarBJ98rOlrshiEkTz+4KK59AI66m1 /XFeIi3xIqfi8vXHvhxPLRuvH6JsN+psdpo9cMM4u7VMLCZRLB3DFwR8J7SVqUUfFFLd xIYztH2D1+58fYDb+ANEVpXbQdVLI1scPl5DWi+v0sp3e9iq/xthT2/Ae76yRJOE0uKX Av0sZJrhESnfdznXSBjNecmJuLWVRu6+0Hrg+JMm4KpcJOaPj8ZpeAJkgrN4jhmAP8iu N37cL78aCXUQUHYs99JH1eyb1XrZ827Ou7pF155kMJ1IwWpJu0fdLu3ModNTHLZrjFki MtfA== X-Gm-Message-State: ACrzQf3b+7BIlQXgv1zuALz8VP9cbnEU+kx2544XFRoZPP/Qs5TQq0YI LYsfQkE6Q+v8MDUyfRqkv2Q= X-Google-Smtp-Source: AMsMyM7Yj4Z3e/W9p8ealnyCMiMQiJbLm9ZSM4INaobc6qE+4ODvHgi4LdrN2KrBrjVR/mizKXDKLQ== X-Received: by 2002:a17:90a:b792:b0:214:2a4a:4bbc with SMTP id m18-20020a17090ab79200b002142a4a4bbcmr44693944pjr.81.1668079907310; Thu, 10 Nov 2022 03:31:47 -0800 (PST) Received: from xuchao.Geely.Auto ([129.227.152.6]) by smtp.gmail.com with ESMTPSA id w21-20020aa79555000000b0056bcb102e7bsm9959929pfq.68.2022.11.10.03.31.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 10 Nov 2022 03:31:46 -0800 (PST) From: Chao Xu X-Google-Original-From: Chao Xu To: akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Chao Xu Subject: [PATCH v1] mm/vmscan: simplify the nr assignment logic for pages to scan Date: Thu, 10 Nov 2022 19:31:30 +0800 Message-Id: <20221110113130.284290-1-Chao.Xu9@zeekrlife.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1668079908; a=rsa-sha256; cv=none; b=gZrR2R2SDSOpMhERJ35SyvHEgsK9/+MfEoukvqO7Rv0wcXbFiLC6qAu/OEE3JA0pzJ7dk0 ssWfvbTRX75dDL6wjddE6Z7aXfa8c2gVsAX6U9dRdy5L/Mv8ba/gsTuumCoXq5zVUV+XKP 6jW1zZKnMl1hc1CPEK4QI4D50AYzKRE= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=XIUBsLhH; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf18.hostedemail.com: domain of amos.xuchao@gmail.com designates 209.85.214.195 as permitted sender) smtp.mailfrom=amos.xuchao@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1668079908; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=Pzfo2COKuQMunTGeb4PhEUp6IKXwGgGtyosnQ14pUIg=; b=2zbz7qrJIHq2eusnHXXDGgtQ4Q6FdxviujFivsxVqlbttwl9g0g9795uUBfJ/a0ksIqwZt /4DjvL+xzso6HNEWdQC483pDsSitBMaheMVrVsJzTZ4QfFBVNKjUzaRJunxoMjYjTcB1lN qzD1BPLf2GA+nqvR9HPFWYFu/O4jmZs= X-Rspamd-Queue-Id: 99ADB1C0007 Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=XIUBsLhH; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf18.hostedemail.com: domain of amos.xuchao@gmail.com designates 209.85.214.195 as permitted sender) smtp.mailfrom=amos.xuchao@gmail.com X-Rspam-User: X-Rspamd-Server: rspam01 X-Stat-Signature: abb7ug6mer4i7xjs1aigejp7jnghtefj X-HE-Tag: 1668079908-480786 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000614, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: By default the assignment logic of anonymouns or file inactive pages and active pages to scan using the same duplicated code snippet. To simplify the logic, merge the same part. Signed-off-by: Chao Xu --- mm/vmscan.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/mm/vmscan.c b/mm/vmscan.c index 04d8b88e5216..69e458e51c81 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -5932,14 +5932,11 @@ static void shrink_lruvec(struct lruvec *lruvec, struct scan_control *sc) * scan target and the percentage scanning already complete */ lru = (lru == LRU_FILE) ? LRU_BASE : LRU_FILE; - nr_scanned = targets[lru] - nr[lru]; - nr[lru] = targets[lru] * (100 - percentage) / 100; - nr[lru] -= min(nr[lru], nr_scanned); - - lru += LRU_ACTIVE; - nr_scanned = targets[lru] - nr[lru]; - nr[lru] = targets[lru] * (100 - percentage) / 100; - nr[lru] -= min(nr[lru], nr_scanned); + for ( ; lru <= lru + LRU_ACTIVE; lru += LRU_ACTIVE) { + nr_scanned = targets[lru] - nr[lru]; + nr[lru] = targets[lru] * (100 - percentage) / 100; + nr[lru] -= min(nr[lru], nr_scanned); + } scan_adjusted = true; }