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 8728CC5ACB3 for ; Tue, 21 Nov 2023 05:14:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E5FAE6B03AB; Tue, 21 Nov 2023 00:14:09 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E0F5D6B03B3; Tue, 21 Nov 2023 00:14:09 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CD6AE6B03B6; Tue, 21 Nov 2023 00:14:09 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id BB1896B03AB for ; Tue, 21 Nov 2023 00:14:09 -0500 (EST) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 921C11409DD for ; Tue, 21 Nov 2023 05:14:09 +0000 (UTC) X-FDA: 81480795018.09.35685D7 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf11.hostedemail.com (Postfix) with ESMTP id 966AA40004 for ; Tue, 21 Nov 2023 05:14:07 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=RTMGDAw4; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf11.hostedemail.com: domain of chrisl@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=chrisl@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700543647; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=M5lrT4c9k4YxTqvdYYYg65ph8m38vApscNSlQybsKPw=; b=6qRkHKcu5ZOIdESbx4AgZZUo7EC0egfIr6COTxlTa5U9lst+042cDRRiDa0Au+c2jgH/+p FMLZ3dsvJSxBmxWtrnx9WfFpgB0kJIE2THSeCjBXOzjfNjrMPjE/sLrA4TvPKCoZXbhb2J pruBEk1xK9IePLSU25kdh1Eg9RQs8KU= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=RTMGDAw4; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf11.hostedemail.com: domain of chrisl@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=chrisl@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700543647; a=rsa-sha256; cv=none; b=is+UPVAx6vd12AI7DQOAqtHM2DcWVpo/tpRSIGzGDqiY2k7Lf498LacAG17aAP5NiDDM+E ZirRlbQLXav0O30OSXxsMxh8fDc92TFlHkxXnA2pSgRDQSgtWmHoeX9ijdEdT5QDhAbPLn P7Y9DnVuCfDXdGhUnb0VlkQBE+wCOWM= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by ams.source.kernel.org (Postfix) with ESMTP id AFFD5B81E53 for ; Tue, 21 Nov 2023 05:14:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B0BB5C433D9 for ; Tue, 21 Nov 2023 05:14:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1700543644; bh=cMMYeOK0yl8K/W6tITA9adS7M/SnAYmBYlglt9NNBgs=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=RTMGDAw4aaIl9p63SCbvf+axeMK1Qpqu3ZhPt5GgZ72SZeyqNj33E/2+xbbksRwv4 61r9DkAghPdqeBx+PVGeEYObOY3vfzZyfGBygpp/bXF1E8qhZ94Gj9vGGYaOWdk755 9pTt0e4uiiyoTNjGcKwMe/gr2xUQcpqMLTW4qRJ4RWwzXq3Mux3ELfJXI+uMaS1u/L yv/zDpYcG/IBITnVcwxplWsfWDdmIQHvSNobCjNFaYnrK8uwhbRkjjns3EKHLyDkYY pIBYnIVPLzw+7FODaStq8REeKFaYJww/Hs6p4fhngNAszkpwzbFcwsPAmvF8/ljL+z lIzmeB6es7upg== Received: by mail-pg1-f173.google.com with SMTP id 41be03b00d2f7-5bd33a450fdso4090325a12.0 for ; Mon, 20 Nov 2023 21:14:04 -0800 (PST) X-Gm-Message-State: AOJu0Yz6udMoyU8nOLF9Qofi+9tbkElTEz+ZQ5rWl7bx2GtSMYEsO52m MR8j9iLxNuQqrwlN7A42Plprir/2WSoCso2YxA0TSA== X-Google-Smtp-Source: AGHT+IF0NKsOGVE4/S06V9QRUv3Od6NAqZLzmxWtZYNeQfRbyQ4Rft126xcQtE8CVrPOEaoBGzizRbs8iBXfndTXzHk= X-Received: by 2002:a05:6a20:3259:b0:187:cbb1:a6a2 with SMTP id hm25-20020a056a20325900b00187cbb1a6a2mr10188139pzc.21.1700543644182; Mon, 20 Nov 2023 21:14:04 -0800 (PST) MIME-Version: 1.0 References: <20231119194740.94101-1-ryncsn@gmail.com> <20231119194740.94101-9-ryncsn@gmail.com> <87r0klarjp.fsf@yhuang6-desk2.ccr.corp.intel.com> In-Reply-To: From: Chris Li Date: Mon, 20 Nov 2023 21:13:53 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 08/24] mm/swap: check readahead policy per entry To: Kairui Song Cc: "Huang, Ying" , linux-mm@kvack.org, Andrew Morton , David Hildenbrand , Hugh Dickins , Johannes Weiner , Matthew Wilcox , Michal Hocko , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Stat-Signature: zhpquo4wdw1jsfxq6tn5wg9rm533qre5 X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 966AA40004 X-HE-Tag: 1700543647-953834 X-HE-Meta: U2FsdGVkX18fEoh7+5Gj53v4KlmVYtibqO02dA+1vrvHOfC7dRhqvs4oqBGd3XPENehLJ9UtbRZxBJU2QPLggoOfbeClPjpfVStMKakef3/3QMb1uHzdTziF0zeYKtg97AOmKVLdNNE7C6X5LU72kBMhDcu2TCY6gvbI+p0L4097y2gFZ5F5nB8XLKKmKvgLrzcNgXgjSIPVVnb9fQsPAyy0j3KQFzg/1O5a+RmHeOBoyzWXdAZbPAwwciIr7yurGM7OIj7yQDA2ZBeqa5F3FaUF8hDxnbOQcAAkwP6CSVg0xLmO+YHLVuaYIzq3WREArc3RwuXHIX56dIT/KMYQTsBilBXzw7iC0AKVKAT+91Bun3fB41CuDI2sE9ZKxW5JGmzcDz2pET85WZf317BX0VX+TN9RBRycn4HEoSZY5Ej05XVlpdpzcbM7BSQZtcOSWhgS+R15hiKxorikG4uvGcRwKdXg73mfthBGlk8Y+ZDn2dSJKijWKpt4e+ZB4wGS5PCBFnVLvNo6Vk0CCJMP9PS2hX6gB3YBhmQtlH8byDnV6JGSXj5TLONYI+QWvP+U6mKp6xhJQCsmTwMvtuVuvFSS/23IgT5NyOTEVxd/pjP0ThAZ+bp/3jbCmwXVWXvQu+DPnhec8G9PF38qKYbyBQLGDGHvIk0RCfzMPcqdgUukHyrCtoFdEaCKTRtx98kYkt6vIkoipraXpqLdja6A+/BrhPyvTt2cJmHPVR/EHutO1v5UvEaWaZOLGQ1tTO0CIEG5evYC31UjmGYlzB2KW0B4zm9Yo4Hbqwmb1NT2kWj5iMyhdcqSsi3AbHyVu2WqUEpIh3BF8PYBIUnoer9W+UxYujw9N65BrLg6ZLTRri6eR4XbP2gxP46/e8MUmUG8au3P4Jfk+Z1vXhlEIP3eCPs7faTr1MiOQ5WzdxAYBvvxgQFtlivWQMwKwIQP6sWAf5o4hcuTWRoQzEXtACX apnvdutb ADtxkICOsaKrgvzaRf/Ows7gksBIzZcWb9SqkNTgK4096RikW/gQG0Y+9kiwHdlAd2uBcY/gwxymN5OcwW/Wb2s0qg39lyO0t5DPHaacKKbXnytJl20sbE5Z1IFRonAUuBaddhqqn3l8UgVQlLIc2/y3ccYan9oHBJxBrumyAybdpbpElkKwjPc/NsZJ3/zWHso9yS8L+uWGzoOOhuoYgXUKN6nLS8U6C9u/uwcQOpf1wr4d6UswUXwWl9NqrWL9RK3AB/GTymTLiGW5gtjQoUHakMzd8i0hiS0TMF2CZ4WqZco8QPC5fm8Ccz+F6cKuHFmN1 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: On Mon, Nov 20, 2023 at 3:17=E2=80=AFAM Kairui Song wrot= e: ime. > > Hi Ying, > > Thanks for the review! > > For the first issue "fragmented readahead window", I was planning to > do an extra check in readahead path to skip readahead entries that are That makes sense. The read ahead is an optional thing for speed optimization. If the read ahead crosses the swap device boundaries. The read ahead portion can be capped. > on different swap devices, which is not hard to do, but this series is > growing too long so I thought it will be better done later. > > For the second issue, "is there any practical use for multiple swap", > I think actually there are. For example we are trying to use multi > layer swap for offloading memory of different hotness on servers. And > we also tried to implement a mechanism to migrate long sleep swap > entries from high performance SSD/RAMDISK swap to cheap HDD swap > device, with more than two layers of swap, which worked except the > upstream issue, that readahead policy will no longer work as expected. Thank you very much for sharing your usage case. I am proposing "memory.swap.tiers" in this email thread: https://lore.kernel.org/linux-mm/CAF8kJuOD6zq2VPcVdoZGvkzYX8iXn1akuYhNDJx-L= UdS+Sx3GA@mail.gmail.com/ It allows memcg to select which swap device/tiers it wants to opt in. Your SSD and HDD swap combination is what I have in mind as well. Chris