From patchwork Tue Nov 22 20:38:47 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mina Almasry X-Patchwork-Id: 13052732 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 CCDA1C4332F for ; Tue, 22 Nov 2022 20:39:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 62DE46B0074; Tue, 22 Nov 2022 15:39:12 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5DE366B0075; Tue, 22 Nov 2022 15:39:12 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4CE216B0078; Tue, 22 Nov 2022 15:39:12 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 4089C6B0074 for ; Tue, 22 Nov 2022 15:39:12 -0500 (EST) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 09F8B410F5 for ; Tue, 22 Nov 2022 20:39:12 +0000 (UTC) X-FDA: 80162242944.27.29D9317 Received: from mail-yw1-f202.google.com (mail-yw1-f202.google.com [209.85.128.202]) by imf10.hostedemail.com (Postfix) with ESMTP id B4CCBC0004 for ; Tue, 22 Nov 2022 20:39:11 +0000 (UTC) Received: by mail-yw1-f202.google.com with SMTP id 00721157ae682-391842a55d6so140436357b3.0 for ; Tue, 22 Nov 2022 12:39:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=FPSzCF4B4ZUUfFv+NywISnCJ1Cav2tvMYf25Hqqvvgg=; b=Ylw0t/TQAkkJ5ZZ1Pjx3hAcFXh/aS80QxJujdVf6jQSIZZqenDDpuUnVzgNX6ILpOT D+OjVdmtDW5/tAPK26Gb1zGy/ZoTCNYUJRF0pyT+nwSM+/hfu38zrqKsPnMqXGmEd+xx cuUwYrnWdEWlYYI+NWRholXeyBpeozHwyScvQAjTUOFxdVVobSIfg3zrrhjVGUP9l7Px HcnmajR3YLpKxiUY3qDInKNDQjuM2qZP0Bd8vfd5A7IwOfoP5RK2bZZ11acFXKOU83kT GwdUHROVxNzf/nQ9nlj5eX8S+GZeK8I5hMFTQ/pyIzMVhZn83FC27sX4jgh9Me5r10Ge mRkw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=FPSzCF4B4ZUUfFv+NywISnCJ1Cav2tvMYf25Hqqvvgg=; b=XBUMAwLqCeazdDg/P08OOzhPxZwa2ACmV6yhGf3Q3S8/i4L1a1o86uQBVvMMf1NYJ8 l9mX9nU2usVjwlLeRywvZpiai3Uld/yPtk8Z9XTxUMxWmGqtJlRm3CZzVH4ueKG+jlu+ iexQnTqsM/NtBg3QsRTVuJ/rOjEGzIaP0P1cGh9ttqhA9/IypK0DUGU4Shefec0Ur0TQ W4GubAMgYTuyq/GGG21pxb9hguJmT/SegQHdkhmZWCoGk2HUuQOjEHkqf8hJ3+u/bRif nYBiHPg+hGPeZisuYaAE54F/jdVN5IVtxJIGsjmOqmjpkIWcDbP+gx5FEBOsjA+bPEzD v16w== X-Gm-Message-State: ANoB5pm9uXLZs11dvyx3hizAVbO4vX9H251pNHyIIDQJLAcQB5Hcy1fl tSFdeJ7buydAZO6pHwCoypADZ0m3kUpsvoM2SA== X-Google-Smtp-Source: AA0mqf5zIOUTB1IFL2y2aEl4Z42kcyhA+7NcLlkiYs3Zc4zWJSHdxsp+4pi/s7LSj0PB2eVCfSvbDfxnKCWTXWMg1w== X-Received: from almasrymina.svl.corp.google.com ([2620:15c:2d4:203:b7d0:497d:abe4:3e6f]) (user=almasrymina job=sendgmr) by 2002:a25:cccc:0:b0:6de:afe7:1c27 with SMTP id l195-20020a25cccc000000b006deafe71c27mr2ybf.642.1669149550378; Tue, 22 Nov 2022 12:39:10 -0800 (PST) Date: Tue, 22 Nov 2022 12:38:47 -0800 In-Reply-To: <20221122203850.2765015-1-almasrymina@google.com> Mime-Version: 1.0 References: <20221122203850.2765015-1-almasrymina@google.com> X-Mailer: git-send-email 2.38.1.584.g0f3c55d4c2-goog Message-ID: <20221122203850.2765015-3-almasrymina@google.com> Subject: [RFC PATCH v1 3/4] mm: Fix demotion-only scanning anon pages From: Mina Almasry To: Huang Ying , Yang Shi , Yosry Ahmed , Tim Chen , weixugc@google.com, shakeelb@google.com, gthelen@google.com, fvdl@google.com, Andrew Morton Cc: Mina Almasry , Muchun Song , linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, linux-mm@kvack.org ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b="Ylw0t/TQ"; spf=pass (imf10.hostedemail.com: domain of 3bjN9YwsKCOsNYZNfelZVaNTbbTYR.PbZYVahk-ZZXiNPX.beT@flex--almasrymina.bounces.google.com designates 209.85.128.202 as permitted sender) smtp.mailfrom=3bjN9YwsKCOsNYZNfelZVaNTbbTYR.PbZYVahk-ZZXiNPX.beT@flex--almasrymina.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1669149551; a=rsa-sha256; cv=none; b=e+M3QsvlUlDYmdyyZi/60dQdGBPUqj1rhohqiWNq0b+SsrfkXtbIYxYb3QmuGdfavzw4mT Coxay6wOCBI4qmu/5XCZsZBRNyYuJmIDNI5PQfb90nHSdD8gAlg61jwdW3dG+Xegf3l2KN Y4VqYPTR9VDV0g0WhxhwHNOyQUXWuPY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1669149551; 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-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=FPSzCF4B4ZUUfFv+NywISnCJ1Cav2tvMYf25Hqqvvgg=; b=JJn90bX0iG63Gid0Iy8DBvCyL4XI9KkdSgqY1juSOK1RVTM17ww+3iKR14l1towM73Q/Ki J/0K3SiVBkfixQYyggfn+N8uCqksbxBXMExAskKbb3xvvw2qP9j9KxGLOUb783YBLcRspt io1wcxCf5GihCCKEjNnygfUiCnM69CQ= X-Rspamd-Queue-Id: B4CCBC0004 X-Rspam-User: Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b="Ylw0t/TQ"; spf=pass (imf10.hostedemail.com: domain of 3bjN9YwsKCOsNYZNfelZVaNTbbTYR.PbZYVahk-ZZXiNPX.beT@flex--almasrymina.bounces.google.com designates 209.85.128.202 as permitted sender) smtp.mailfrom=3bjN9YwsKCOsNYZNfelZVaNTbbTYR.PbZYVahk-ZZXiNPX.beT@flex--almasrymina.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com X-Rspamd-Server: rspam06 X-Stat-Signature: 5gzdw1pi8k4q5qupow9fmc74byjujipn X-HE-Tag: 1669149551-767731 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: This is likely a missed change from commit a2a36488a61c ("mm/vmscan: Consider anonymous pages without swap"). Current logic is if !may_swap _or_ !can_reclaim_anon_pages() then we don't scan anon memory. This should be an 'and'. We would like to scan anon memory if we may swap or if we can_reclaim_anon_pages(). Fixes: commit a2a36488a61c ("mm/vmscan: Consider anonymous pages without swap") Signed-off-by: Mina Almasry --- mm/vmscan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.38.1.584.g0f3c55d4c2-goog diff --git a/mm/vmscan.c b/mm/vmscan.c index 8c1f5416d789..d7e509b3f07f 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -2931,7 +2931,7 @@ static void get_scan_count(struct lruvec *lruvec, struct scan_control *sc, enum lru_list lru; /* If we have no swap space, do not bother scanning anon folios. */ - if (!sc->may_swap || !can_reclaim_anon_pages(memcg, pgdat->node_id, sc)) { + if (!sc->may_swap && !can_reclaim_anon_pages(memcg, pgdat->node_id, sc)) { scan_balance = SCAN_FILE; goto out; }