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 0E5A6CD1292 for ; Tue, 9 Apr 2024 01:09:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 226986B0082; Mon, 8 Apr 2024 21:09:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1D6ED6B0087; Mon, 8 Apr 2024 21:09:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 09E996B0088; Mon, 8 Apr 2024 21:09:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id DF9A76B0082 for ; Mon, 8 Apr 2024 21:09:30 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 8EBB9120220 for ; Tue, 9 Apr 2024 01:09:29 +0000 (UTC) X-FDA: 81988210458.01.B3E65F2 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) by imf28.hostedemail.com (Postfix) with ESMTP id E64B6C0015 for ; Tue, 9 Apr 2024 01:09:26 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="UVZlvsS/"; spf=pass (imf28.hostedemail.com: domain of ying.huang@intel.com designates 192.198.163.11 as permitted sender) smtp.mailfrom=ying.huang@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1712624967; 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=/q/pS5VWmkgJoe/lbRAjXp5xkfsvBlP1onerHFpOBRU=; b=jNwzcLmnFrMv03YPPuHw83J4Go1jSDQRa1+DBOp+S1Ch6xa8S5chVUL5LR+4+Cy0u2Z0mb BQRLGVAjiOAQqw/TXUHclTmiqAqa9Va+izPpCmi17C7NbFdeyV9UGRJWlbZy2m48WLK9lr t0zfttP9v0f0LpgHyk8zS34W7TeDh0A= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b="UVZlvsS/"; spf=pass (imf28.hostedemail.com: domain of ying.huang@intel.com designates 192.198.163.11 as permitted sender) smtp.mailfrom=ying.huang@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1712624967; a=rsa-sha256; cv=none; b=7eeAizGuKC+sQqLfSmNn15/KL3ym5y6tDdncyuRP5va6hbzMscyJg6RrYVxCevbvJSDtqQ sdKqrx52n7/l1ESi4EOS+eGNgMrigjXoSFLiMZYDgBR2EQU6WeHZDMqFluxphbBankKEez Pprgkrr605JTJ/lhjqEZuBae44Nmrmc= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1712624967; x=1744160967; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=/8XqYJs3NAILkmaX8AcFbqEoJRh52nEXesKZfZMQ6UM=; b=UVZlvsS/bcebWlR5iYIgsi8RYzcHtonNA1MsBEcpTvZAughMNu495MCc uIXStIu0ag3i1G5Ozo7QRYz2FmuhvyCtSqYogl3higumr6MRzooHcisnv 7TdAN5r0KbHLychd2uNtoya8hIdJeTUSbnnNrYQAmcXYUdD4a4TGLbilR iXQp1X1AXGq0VjRnZaIO/LDgzaCkS/avHCTENl0Ycra+5oaBNziip9A92 kXH8w0RVBccE3SBBFJEMIRYAI5BevGEpnbUMTeablW0iLyDAzOoThFkQw Fg1H7BgEhmn5mzagaFNpzaQgtwVlN/FCETDFPKFNoVd0e0UrvzfQrLjze g==; X-CSE-ConnectionGUID: wwdYiygPS+O4NtuP9iIZ2A== X-CSE-MsgGUID: H8eQjlxuSRKaGCexES1XTA== X-IronPort-AV: E=McAfee;i="6600,9927,11038"; a="18536405" X-IronPort-AV: E=Sophos;i="6.07,188,1708416000"; d="scan'208";a="18536405" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2024 18:09:25 -0700 X-CSE-ConnectionGUID: KMGnh2sQRMaZ4G8v/STDlw== X-CSE-MsgGUID: /DfFWl6KRmy60VIzxSDSGg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,188,1708416000"; d="scan'208";a="20500770" Received: from unknown (HELO yhuang6-desk2.ccr.corp.intel.com) ([10.238.208.55]) by orviesa007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Apr 2024 18:09:23 -0700 From: "Huang, Ying" To: Andrew Morton Cc: Zhaoyu Liu , ryncsn@gmail.com, nphamcs@gmail.com, songmuchun@bytedance.com, david@redhat.com, chrisl@kernel.org, guo.ziliang@zte.com.cn, yosryahmed@google.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v2] mm: swap: prejudgement swap_has_cache to avoid page allocation In-Reply-To: <20240408132704.f966adc8d3928df4d3b8c0a9@linux-foundation.org> (Andrew Morton's message of "Mon, 8 Apr 2024 13:27:04 -0700") References: <20240408121439.GA252652@bytedance> <20240408132704.f966adc8d3928df4d3b8c0a9@linux-foundation.org> Date: Tue, 09 Apr 2024 09:07:29 +0800 Message-ID: <87edbf8hta.fsf@yhuang6-desk2.ccr.corp.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=ascii X-Rspamd-Queue-Id: E64B6C0015 X-Rspam-User: X-Stat-Signature: jz99mh5dbp9mq3r9s1sbiw9pu4nknhrm X-Rspamd-Server: rspam01 X-HE-Tag: 1712624966-54600 X-HE-Meta: U2FsdGVkX19MCKD/7JCWsxtVgR3SHCzgNAUISXZkV7rMo98vuAVFJKyXTdGpe2QFCxO1f3eFMc3ToNTFlTEruO5XvysaWYaoZ3mk2OhqdP1zdXdYNWq46uU6g6ZahifidY7iUaZjou10At7xteHVbE3KoSKBKyBYGOII/2oO/h+ZdXJ4ve3Vxb2m5nffc+pKAIEB/l5XtiFNJ+ShxvjBVRup7qdyCc+cdIxmyJeqloy1AVqEoU/TXhULUct42K/NnWlylTWQLUH6kFDKv0SJDWas3DnbZfQVnN83FlQHK+9QEqpgSOR1LmTxrCxg0ITR795/JR1uurb6f4+/vgduwpvRUKpQztZNGZ513WtOdJI8KEIQtgIjyvEZHCwXJB8S1n/mLdY8SUMzIUaot1S5+wZF5kLuJN+W2dQKNA4Q4QgbPcpwEk/Z0NmN9TPoK6uC3sjo5Yg/ghOObdwFjc8iMivtghBXlAq3mRKtSFI4tvZFNd0pA8TvBEGvm7WL9x3isbOSyCL/3tufiu1zY8t8kAYYkIwPYazLp3M1BVz9cGmsKLe7zpQwSYevYcfnsxLUgOh3Hi9LiLhsE2xLtxKkzD0H259mRBDftbBgg7LybS/Qse3GvYU+RMFxekTrxcUZfAG7m+zG8ILo+8CUw/QacgRqNwGczo12RskD3WrxmN0yCjeKD9C6cANjSzPuQsaXOzqa8udybodEjpH7qnTXiivVeDOfVgmso6Ba2QZM93XV18eBY5Z8usOXnI4YGWriVS+WCscBzlpjXgc4/LnxZi2TwTrXKh2P+BxMHYk36Aavgt7KWgY4K20UETU52qzsZaGL2RWazkHm7SxCmZqKYHOpQiG7Xz74i8H8Bj0m4sN6HzigpomClCu+kJ+oR1aCzYwZg6mU6HLCmTKEzKYIgImcYmJNcLBVEMAJR40II13JXJ9V0nCtMfZbh5YIg4p3JFqpFZmzdeI0+muVNMg VQdeYWKS 6ezpVkVp7eLvw54mh//xFIzhp3VvELCnRFkdxHxu4lLe1OkZ/38J/OQIqeQ7MjhFHQW2mSWVOtqLWbOW6Ow65Es3FNg6aEVjshsKiSPVd7n/ZkL+d8GW9xUYqkxdnAFYFPB3okVs+CoPJ7oSPF7tpDDFWCozW9miJflq4Lrc+Uq5f+RN7+JyWepcEQFL9VEyg6leoqfuHaP0JMMnNBJnDkGCKnkZvQsqBmJMf8eFCVnfXe6QGxMyWUeP2k8D3CmFQZ95WwlaajCWbg34UtwlLhOibeA6fe2222EJG7wBLTUKapVjcq9WgCHL73pjF9bz5ikV/+nTdhPKn4YcOAEy3wllspA== 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: List-Subscribe: List-Unsubscribe: Andrew Morton writes: > On Mon, 8 Apr 2024 20:14:39 +0800 Zhaoyu Liu wrote: > >> Based on qemu arm64 - latest kernel + 100M memory + 1024M swapfile. >> Create 1G anon mmap and set it to shared, and has two processes >> randomly access the shared memory. When they are racing on swap cache, >> on average, each "alloc_pages_mpol + swapcache_prepare + folio_put" >> took about 1475 us. > > And what effect does this patch have upon the measured time? ANd upon > overall runtime? And the patch will cause increased lock contention, please test with more processes and perhaps HDD swap device too. >> So skip page allocation if SWAP_HAS_CACHE was set, just >> schedule_timeout_uninterruptible and continue to acquire page >> via filemap_get_folio() from swap cache, to speedup >> __read_swap_cache_async. -- Best Regards, Huang, Ying