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 X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=BAYES_00,DATE_IN_FUTURE_06_12, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F1F75C433F5 for ; Mon, 6 Sep 2021 01:57:55 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 8A88B60EE6 for ; Mon, 6 Sep 2021 01:57:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 8A88B60EE6 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=os.amperecomputing.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id DE61D6B0071; Sun, 5 Sep 2021 21:57:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D94D86B0072; Sun, 5 Sep 2021 21:57:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C5D79900002; Sun, 5 Sep 2021 21:57:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0051.hostedemail.com [216.40.44.51]) by kanga.kvack.org (Postfix) with ESMTP id B2AFE6B0071 for ; Sun, 5 Sep 2021 21:57:54 -0400 (EDT) Received: from smtpin14.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id 701532A029 for ; Mon, 6 Sep 2021 01:57:54 +0000 (UTC) X-FDA: 78555487668.14.112122A Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2129.outbound.protection.outlook.com [40.107.244.129]) by imf01.hostedemail.com (Postfix) with ESMTP id 00A6B50510AA for ; Mon, 6 Sep 2021 01:57:53 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=W7omeEhHEp53nPV3jW3tU2ISTj4pt7jQXxRKAmmgly2Ll2nsRdFrmiOcp1Y4zC5AmAHHNmHAtCwCOFp6eQp6V2WwXmDddYN3lmEHZbR4yU0DniXxO/JYfOsR/BbQN/MEEBL9Me+HyMKonaWnsu/T4yTrszMnwICnComIUzV5Um2wqoBSDoMTVXPbSsh5AQHinJK1ls7Uhd2lbfcu6HJIhx8nNXQAKPEYGFxx6gHS5AYRHg9fan2gG/rXmXjWqdbL3MfX1hw0LxlkPGVyq8qKgnDUrG4TVqpPu/7CoO7e1RvvVdM/z9MapgNcZJUdRh7d9sZklGvePSckdLceVNxA9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Jqh+X4rotntuwUJDKlD9dodpbvpSczAhdVNXzaj7rDE=; b=IXBLKQ0t0XesO8U07LIYTN6DHJcGwAVMVj1nWlASinRmeniz3jmYLJvDu1HJni84dh78UMlD6GIiOFxUbcEobqtX6ZJrsvNi+PrIr61kMoIITpGSe5yTGg0267tHtIMfd9kAE2J+nSn+9UKqvUXT4O78bBZWujZDkS/yO20YJnVKAoTZeaQB8nxxLsIPpcbMqQsO0WEN+ZE74iKly9PZVOshcHE1vYhivQkjNKZrJwzvW7MiGxt7i/APQljKIYenhULZq5OlN48qQdPSKPh6HIyJyv+7mrObutca7uZbhxwxPteI+pGDMDpNltGl2BLGKB5VaZeUEZgDaP+Wp9/Wlg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=os.amperecomputing.com; dmarc=pass action=none header.from=os.amperecomputing.com; dkim=pass header.d=os.amperecomputing.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=os.amperecomputing.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Jqh+X4rotntuwUJDKlD9dodpbvpSczAhdVNXzaj7rDE=; b=WewLi1Mz09Y2snQNY/EqeKPBmeVc5QP7AYe1I9gSE756CkjLQNsDvQxXKEt5zPGqK/jt1Wsca03C2NQXZbTUIRIil+Fb8H5LqOUuIMOW3kXbAd6MlKauo7dX/x/Bq/3BHq9o5Ca1rotbstK2XKHDYtzMYSaxv6qbyhaY3FfN8uE= Received: from MWHPR0101MB3165.prod.exchangelabs.com (2603:10b6:301:2f::19) by CO2PR01MB2101.prod.exchangelabs.com (2603:10b6:102:a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.19; Mon, 6 Sep 2021 01:57:51 +0000 Received: from MWHPR0101MB3165.prod.exchangelabs.com ([fe80::ed89:1b21:10f4:ed56]) by MWHPR0101MB3165.prod.exchangelabs.com ([fe80::ed89:1b21:10f4:ed56%3]) with mapi id 15.20.4478.022; Mon, 6 Sep 2021 01:57:51 +0000 Date: Mon, 6 Sep 2021 09:56:17 +0000 From: Huang Shijie To: Linus Torvalds Cc: Matthew Wilcox , Nicholas Piggin , Andrew Morton , Linux Kernel Mailing List , Linux-MM , Shijie Huang , "Song Bao Hua (Barry Song)" , Al Viro , Frank Wang Subject: Re: Is it possible to implement the per-node page cache for programs/libraries? Message-ID: References: <1630552995.2mupnzoqzs.astroid@bobo.none> <1630652670.aplcvu6g23.astroid@bobo.none> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: CH2PR20CA0021.namprd20.prod.outlook.com (2603:10b6:610:58::31) To MWHPR0101MB3165.prod.exchangelabs.com (2603:10b6:301:2f::19) MIME-Version: 1.0 Received: from hsj (180.167.209.74) by CH2PR20CA0021.namprd20.prod.outlook.com (2603:10b6:610:58::31) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.19 via Frontend Transport; Mon, 6 Sep 2021 01:57:47 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 30b63b3d-90c1-4ae9-44f8-08d970d9bb64 X-MS-TrafficTypeDiagnostic: CO2PR01MB2101: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JjxYLFmu59n8CWsZJCK5fqyJpj4+rjx05mo9pibkiviw/R1PJTZwDO5J0bIP2sm/1GeZ2gaXjSEajs9xWIlpxe31BX1ZZ0vE5A+h117kQb35tAf/yOYoHRFkSr01HqBt/7q8WyggoBPB4aZ270oYXN9doSTLHNFEj68ba7vXArGbYESrSNGU2UM/JkKAHPsKu3xujlshQcWq0FLqsVLBUEMU0Cbd9ZKGBH1rxQsbfUoHtoMcolY/O5qFg/3hx3lVNNAucB3eoYQNTVP5ZITbyBWQ49/vW6Hib6JoiP8wEiTgXh7z6jRaSyOm9PQxgsvt9CtEPqtnWIamVQU8O6eTBadjas8L9TjqxU2lQmWFrmEB6cyr1cyLxoaZvhNA8cuLaKri/Vb4LpRk+4HtbyZOjFeGI5Nt1zbtfTfzibet6GqMai/dtNPFWTwsYG4NjyUqGGDOcjU3DukYvlOSPuPXuxjTcu/lr217VMSdRi/F20SM4gQCoHqR7zEOjUvq/4vi4Tx2Fvck681cqZlyGIixksjWrqlQpFRYq5mPYUiAkhVmJIt0cLlF5l9pekP01/oiqWyhcq5phaae5a+dCAm6rcVxbA0kR6vBHkF+tq8uFmNfN426mKB9IgSqBfJf326BWX1UIIf5XYSyxBDbKcCDng9LfeqDn0bVvb5L6PWcrtpqNSfVK3YxM+FGIEaiVFxP/eXN3D/ndAXpHx8IpWjRKw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR0101MB3165.prod.exchangelabs.com;PTR:;CAT:NONE;SFS:(4636009)(39830400003)(136003)(396003)(366004)(376002)(346002)(38100700002)(38350700002)(6916009)(54906003)(26005)(55016002)(6666004)(9686003)(66946007)(9576002)(478600001)(66556008)(66476007)(8936002)(4326008)(33716001)(186003)(52116002)(6496006)(2906002)(5660300002)(316002)(53546011)(8676002)(956004)(83380400001)(86362001)(107886003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?sK3kITPLubJRQHoorTn44oEiujxFgeEyG7X2cbSFO61+JXljbswSWrNpEJdP?= =?us-ascii?Q?TAuOK4K31cGfwyotBdyhXanE3aqnXmsxu0JBKj4kMBW0cmteANNSXzEgSksz?= =?us-ascii?Q?QP/4K0TO4pN3+zkj2B4MUweucn7nuj7R4LP94cO67Cb02P9XCiPZZqDhZnbn?= =?us-ascii?Q?U4p7iiy1ol8LDxLpb9xy9eGbRagXiU9hilDuTHY1lm1jqcrqyvqEJNCbMyaC?= =?us-ascii?Q?QOI1nh0HKtsWyBLRoJvCfYr+szOamMBnYA/kJ4ctV+jxM+wr/ZUMcCm5pPjl?= =?us-ascii?Q?fO+WJdGSF60aRQ/qxxqMHz58VDsIDw8afQkDJNhGSzjRpeJzceG+c4D5dFIz?= =?us-ascii?Q?ZMsG7zZbaLSFsKtv9rllk7UNuenvrPIhUT9BTn4r6i3RijUhmCjTJDzwoKVJ?= =?us-ascii?Q?Fu4jHT2d7tYQhPSpp5ViY8+hxa99w8llevy1n5K3xlkQoydhwAgkhFeGspBv?= =?us-ascii?Q?iCevJvDOt3Ku8GiC7vwKmf0DIy8+0m+Uw8pyoz1ztov7mdJb6/+Wc8jaNGE3?= =?us-ascii?Q?Mq6sfUxxpZHuIrTmzQ5JMBgOO4Fr5eHsB2ue9jfC6707Suiw5szg5IO/DJrH?= =?us-ascii?Q?oOiM39cORqsukziQq91OafJ3XKgNbnUh7IYNlSC/P7sdnkrfavBYgmuNyHj0?= =?us-ascii?Q?KV/OtKtvrw/f5/sSi0dQOuRhF+mUKCq2kKTWiX3gyaOvcpZNs2CjvWHyml0H?= =?us-ascii?Q?YmRQ/wt2hb3fmaH2Fha2epicTlBxoecMRDjy0NxXBpCnvPSQjmtWMsmbqbBJ?= =?us-ascii?Q?EoutjswkzaXN7ykTfe5TdBXb88fNxpbx5Kl5askDr1KLG5kLDUHwWf1Sl39V?= =?us-ascii?Q?HPYzDfVEsFGB4dBbxxtsbczoT81A1sHoG5MzXr5qX53FegE6a6ZdzzDzgbTu?= =?us-ascii?Q?A4WkcFERQQ5Fsk7l+d0tJVDOvQ/Y6BDPpFkpAxMuf/b991EIbctS5hp3mCcf?= =?us-ascii?Q?+GqB7pkyDhaLs570JTTqfxQEZ4YcLmXmDwalFoKs4m5h3fL1r5OJS/tfGbbT?= =?us-ascii?Q?8hp++RKHgbTu8BU7J2/guNs38nWq6Cf508IVluWh08Q1Vqri+YbYbHLIB0HD?= =?us-ascii?Q?2UEyem3sqU5dO1mjhkGHT2Z1TY6Uifd+uRLfFvzkaUU0tCgzfuEynFPS8hyI?= =?us-ascii?Q?x8nlAtIcGR0L/ZJDeQltCxoD6hk+AyRZxZuImtoGR+Eo+0CucXnL8PQfd5UN?= =?us-ascii?Q?HRrnHfFmphcdWXwarEACdwf75We1kabkCxs/MrBKxBkD5xHDhrRLnL+Pi2ja?= =?us-ascii?Q?B2VGgKdkS/CK4QPVFbAkmXj1TafxxLwAg2K27Q5gH0dvVfRoro8IXL8eJa3Q?= =?us-ascii?Q?CEl1F3NGRnH7+1UfeTMAXusQ?= X-OriginatorOrg: os.amperecomputing.com X-MS-Exchange-CrossTenant-Network-Message-Id: 30b63b3d-90c1-4ae9-44f8-08d970d9bb64 X-MS-Exchange-CrossTenant-AuthSource: MWHPR0101MB3165.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2021 01:57:50.7558 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3bc2b170-fd94-476d-b0ce-4229bdc904a7 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: CxNkjpjonAZtt9JW/1sbMii9Kt45qQUGb1h0tNRt0Bkaj4s65PjxCqurRvGVL+awKjOugzPurO5hiKq1Gz4TtpwFgEwDyR6YlGiIc/Z7ViytSgfFBGFDbHmD08XTzWPS X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO2PR01MB2101 Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=os.amperecomputing.com header.s=selector2 header.b=WewLi1Mz; spf=pass (imf01.hostedemail.com: domain of Shijie@os.amperecomputing.com designates 40.107.244.129 as permitted sender) smtp.mailfrom=Shijie@os.amperecomputing.com; dmarc=pass (policy=quarantine) header.from=amperecomputing.com X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 00A6B50510AA X-Stat-Signature: g54suhgry6cx3mewdw4s94omw3tinhc4 X-HE-Tag: 1630893473-627571 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: Hi Linus, On Fri, Sep 03, 2021 at 12:08:03PM -0700, Linus Torvalds wrote: > On Fri, Sep 3, 2021 at 12:02 PM Matthew Wilcox wrote: > > > > Was there a reason you chose to do it that way instead of having per-node > > i_mapping pointers? > > You can't have per-node i_mapping pointers without huge coherence issues. > > If you don't care about coherence, that's fine - but that has to be a > user-space decision (ie "I will just replicate this file"). > > You can't just have the kernel decide "I'll map this set of pages on > this node, and that other ser of pages on that other node", in case > there's MAP_SHARED things going on. > > Anyway, I think very fundamentally this is one of those things where > 99.9% of all people don't care, and DO NOT WANT the complexity. > > And the 0.1% that _does_ care really could and should do this in user > space, because they know they care. > > Asking the kernel to do complex things in critical core functions for > something that is very very rare and irrelevant to most people, and > that can and should just be done in user space for the people who care > is the wrong approach. > > Because the question here really should be "is this truly important, > and does this need kernel help because user space simply cannot do it > itself". > > And the answer is a fairly simple "no". Okay. Thanks for confirming this. Thanks Huang Shijie