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 82DACC52D7C for ; Wed, 14 Aug 2024 00:28:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1C8796B0085; Tue, 13 Aug 2024 20:28:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 178BD6B0088; Tue, 13 Aug 2024 20:28:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0411A6B0089; Tue, 13 Aug 2024 20:28:12 -0400 (EDT) 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 D8E476B0085 for ; Tue, 13 Aug 2024 20:28:12 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 7CB1AC0B58 for ; Wed, 14 Aug 2024 00:28:12 +0000 (UTC) X-FDA: 82448964024.24.FCD9354 Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) by imf29.hostedemail.com (Postfix) with ESMTP id 89B3E12001F for ; Wed, 14 Aug 2024 00:28:10 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=1JFTSyE6; spf=pass (imf29.hostedemail.com: domain of david@fromorbit.com designates 209.85.214.170 as permitted sender) smtp.mailfrom=david@fromorbit.com; dmarc=pass (policy=quarantine) header.from=fromorbit.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723595219; 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=4be7udvz9R9rydsaMSDozSuZk0sYO5yu7qJyyDml2NU=; b=Mgf6cE/xJpa0whBuoqPHGL60Ml6OqwGN/FVABdh0SxtxAksMkIqw9B5cs/28VDfxmBAPtJ QAyCKDSBoegUcFoM20quV1uZ4gAeXcQ/4MbhtnHvZxymW4bj9t7j+7ifzOZZg39/l3MFtM AGWI4i56gvCgrLkk0UsNU40qw7VVChY= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723595219; a=rsa-sha256; cv=none; b=PwpERxqy03h/I37MYEeQpb120ZtjyRtG59nTwoRCF5PQP034OenLgpghzfl4PLC1kt2L+n VCQoMlcVOfScJ1wW0P+O/pskGbvlDm0kAuYKMv+T6b3/slNbW7FA62EoRxCDVrxBwEsSQN S5HVg0wUVYaX5foDtakcIjz5BLCE22k= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=fromorbit-com.20230601.gappssmtp.com header.s=20230601 header.b=1JFTSyE6; spf=pass (imf29.hostedemail.com: domain of david@fromorbit.com designates 209.85.214.170 as permitted sender) smtp.mailfrom=david@fromorbit.com; dmarc=pass (policy=quarantine) header.from=fromorbit.com Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-201daff5461so258735ad.1 for ; Tue, 13 Aug 2024 17:28:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fromorbit-com.20230601.gappssmtp.com; s=20230601; t=1723595289; x=1724200089; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=4be7udvz9R9rydsaMSDozSuZk0sYO5yu7qJyyDml2NU=; b=1JFTSyE6FbmD+PAOfUph/IH00FLM1/W1KFhWtO2mabLpSY2tKqACgN0XDQYNt4LF8u EMSrr1RQBrUlK5ewfhZiPfUqLWDmmDj/YZlYJNouVrYyui+8+L+7vSnNgCQSLvMo5j3w CNrVZP2KqXfdbZEWxCIvHIsase3k61lWnckpU5fNS/TlAVn/Iw0ZRb687454rbMMr5ql akcmy8PJHkpwa8A6/exDJnn1uyXWICYTEQ2zVkmdTagu45QtRXbMNCi8M9EKDqea+Y0U EnZd0CX11orIqXcTPEPT28Bk0wFALNqfu74kzxZX9FbixVdMThWSus+k9dY5IxUpiXDX qaIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723595289; x=1724200089; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=4be7udvz9R9rydsaMSDozSuZk0sYO5yu7qJyyDml2NU=; b=DxipRHyerdUb4NmZjHX+WDZRgpCtDFfuFpR6bCDOKHWnY2wkZcrklRngc466yTelC8 akdGE6huAwvRv6xJ0E2gsfNoaHNY3P86WcHYdA+KhBFeGKBcOPq+asVjM9+BU50wbwNW DUHegv5zVj2/QRaGH6mVB+C1aBEyKdLvcEIhdRVTUsK5b+bFYFdHPf8CqmCEoTqTcNgV xQ5R75Gew9pLa+n1b4SB/RbiYYNoBEWR7qk6z8hq9Ni7WZltEhXhy5376jmIDKzYOpT6 Te0meIS7wvamf9dm/Nh63Ue+Y0v6vc76HsyC991qPei8Rq5CV5OxWrU5wzPzKJuxNyVO Sr+w== X-Forwarded-Encrypted: i=1; AJvYcCVvmkwGCHIGa07P5xQ7XcxzYuYdxnlcQGylcVWy2LVc0Ba/4M5tVaHho7OfVaZcC93mBys/tuF4mfur5eSsXZwJDlM= X-Gm-Message-State: AOJu0YzdA1RN8BmB1pYrZUVYhTtWEfNKWzK76FkkmkaefxN2IYjJApxt iVtgNSuKHjUQ7IkdlF/lWurSlsNULQEDe8UCAKVEDklBcJzookDQBR1bVBi57lE= X-Google-Smtp-Source: AGHT+IH2RpvA6yqK5DHVPHFaL19vHW061hRoHggconhnsf2N1F+CHfcBeuIKIlaZb9+7z3wGoubZHA== X-Received: by 2002:a17:903:3607:b0:1fb:8f72:d5ea with SMTP id d9443c01a7336-201d64a5b20mr15553525ad.50.1723595289074; Tue, 13 Aug 2024 17:28:09 -0700 (PDT) Received: from dread.disaster.area (pa49-181-47-239.pa.nsw.optusnet.com.au. [49.181.47.239]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-201cd1e583esm19080015ad.302.2024.08.13.17.28.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Aug 2024 17:28:08 -0700 (PDT) Received: from dave by dread.disaster.area with local (Exim 4.96) (envelope-from ) id 1se1ry-00GChE-0X; Wed, 14 Aug 2024 10:28:06 +1000 Date: Wed, 14 Aug 2024 10:28:06 +1000 From: Dave Chinner To: Yafang Shao Cc: akpm@linux-foundation.org, viro@zeniv.linux.org.uk, brauner@kernel.org, jack@suse.cz, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, Kent Overstreet Subject: Re: [PATCH 1/2] mm: Add memalloc_nowait_{save,restore} Message-ID: References: <20240812090525.80299-1-laoar.shao@gmail.com> <20240812090525.80299-2-laoar.shao@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240812090525.80299-2-laoar.shao@gmail.com> X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 89B3E12001F X-Stat-Signature: 4u5b1t4d8ky8or7htyzofmca4ib1g9gz X-HE-Tag: 1723595290-998112 X-HE-Meta: U2FsdGVkX1+PJDiaROHATGlQTLGPQh8q/8mW5FTNjYNODTWs6ZmPMPnFbnpgfhlybVcmfjaX+P9hjg6NTOTnDkhA4IwMgPgU6B697D9qhGFvVuR51Jh5SkiamddTC2wO9CbcTOoir2u4gLFq3Fi/egGiQwSHgYfo98ZvtSg3FNvZD/aohhZ/qyndFeEtgPoshj3dvnoE6IPJH5tWq2X74rlkylczW7mqUc3Q/7B940p0LbG5MareVriJbBlvTYiFkt9W8NuVryWNi07cFS8m/EA/WNmcwdZbRINCMSE1SxtXtOHP/hiPBTyWuaZYYxj5JVF83imd9Xx44E030OaYqw2AxA02i1JXygI8EQ/R49eoA8UWS6e9Q7rXhuQOsvtYoK9Y5O3hYeO8Cfp3izRvaKiybKoOg9IUkocrFL2FGMwN4w+aahY9IbaRi990/5DHAtSbnhnbvfuSh0R76hwSoVHrl5uhWvAW1wjvWyWLrP6mOpUwZUioMNdyL0/WbTpP3YCqp1mJ8AYeSDw96/gL0hM5bXg9b0OoOsmBHj2sk/dL1oF6K/YizeTZq+Gf4GXc286nepNaefzP7Ki7a1Lx0PZedPvhrjxed2VY8gEj0AH1fcZOTTn6nFuO2sqCzzK6idjfJ1bN5fypUz0jlQ3PdN6aIvzWn+5a2Yr1tjf+/MEjZVEQLgMlcKxZjR9rkqD6TlAxckCj+wW40T7ZLXtGSzjyRD0C8JytiS7dUY8wSJEeslZfiXf27woP20bxrSHud/8HpMFlMyWbKrR/QkHn4te0sqL8JKYJoQaW0OBLeGJe/DSAqymCXX+pWA3FrAy/wEb9MM558HpQH0L2/2WRjo2IT1sivZ3SiAZpZjri8dOay9wnFkZwAaEpb1C9jBKC6ijD55I73tY4OBKjBSVJ2BbK9FS776u3aK3/SbZA2eI2lVHgfU7TwDsTeykdEpXE/si2HlkjBiU9/MbAouX pO3Grk2M rIA+Yeey8pv60xS7O+K19cjpEcrtoZgkkipSjq6XbDsalg/QZDnel47huscpaRVH5hzwsSwKD74ppsJyb8+61ZjjzlLiz0pQ0MSCslchcNNzzbtMpKvTsRuOU2X6d4jt5vUCJ3O0LzGu+oEGf0tdiXvuX84sKBQoHRA1KrE4/JgU2ZHJUG8j4AFRJIMFPMzqTCKkSwdSDAK8xlmWXhn4Ev0eut4Q0IIQkAKg7XMKmfps2rTo61COr9rKox2WNrLbEbdkJShbsH9OdM0dvvRtuW1b0N/WSyYTGKSGA8h1LGLKpiK1udp57p/LpqIRPNQGy2k0sltYfQFo9g4qk9btQMcfx1WvSS9XMG2Z8v0yWkyEo1JozqHoAiS3MRgn/syM64w4Vdcv7A7n5h4YZ7WcEHPIBLNNyTOVtkK08NQ4IN9wH9lad8s/8TFd2r2la0DRXI+4UY/QKg437Q9cgMudkNz1acnVXFtQRC0h4YImiFue18mLAf4vnRJjOKVrs1dUF9BTY X-Bogosity: Ham, tests=bogofilter, spamicity=0.003102, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Mon, Aug 12, 2024 at 05:05:24PM +0800, Yafang Shao wrote: > The PF_MEMALLOC_NORECLAIM flag was introduced in commit eab0af905bfc > ("mm: introduce PF_MEMALLOC_NORECLAIM, PF_MEMALLOC_NOWARN"). To complement > this, let's add two helper functions, memalloc_nowait_{save,restore}, which > will be useful in scenarios where we want to avoid waiting for memory > reclamation. Readahead already uses this context: static inline gfp_t readahead_gfp_mask(struct address_space *x) { return mapping_gfp_mask(x) | __GFP_NORETRY | __GFP_NOWARN; } and __GFP_NORETRY means minimal direct reclaim should be performed. Most filesystems already have GFP_NOFS context from mapping_gfp_mask(), so how much difference does completely avoiding direct reclaim actually make under memory pressure? i.e. doing some direct reclaim without blocking when under memory pressure might actually give better performance than skipping direct reclaim and aborting readahead altogether.... This really, really needs some numbers (both throughput and IO latency histograms) to go with it because we have no evidence either way to determine what is the best approach here. -Dave. -- Dave Chinner david@fromorbit.com