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 B9A03C021AA for ; Wed, 19 Feb 2025 13:33:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4A96C28022E; Wed, 19 Feb 2025 08:33:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 457DB280226; Wed, 19 Feb 2025 08:33:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2AAD328022E; Wed, 19 Feb 2025 08:33:35 -0500 (EST) 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 0D13A280226 for ; Wed, 19 Feb 2025 08:33:35 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C0832B2005 for ; Wed, 19 Feb 2025 13:33:34 +0000 (UTC) X-FDA: 83136786348.13.1D0BFA3 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2088.outbound.protection.outlook.com [40.107.243.88]) by imf07.hostedemail.com (Postfix) with ESMTP id C3A5D4001A for ; Wed, 19 Feb 2025 13:31:41 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b="q/Dq+Tqv"; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf07.hostedemail.com: domain of jgg@nvidia.com designates 40.107.243.88 as permitted sender) smtp.mailfrom=jgg@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1739971901; 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=Tiw1uzBO6Z7iE7rrpV8RZ0KTH2cyQwd8yq3WE4KKFas=; b=7kzgEZ/250kJ5AM4GuKikCS6bOFXeN71ZW0Lgm0pNPIdyWgaK5mGZdS//HYpS9R1AzfzLB AAcmpew7uO1YQU4FjhqSsiNQS4t6cg1VRCLoTsDDI6q7JGLU4UvvZ9v4waqI9qWFIQZkHa jYICfPFa+ZAxwkbZsG1Sb1mJESSvPXY= ARC-Authentication-Results: i=2; imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b="q/Dq+Tqv"; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf07.hostedemail.com: domain of jgg@nvidia.com designates 40.107.243.88 as permitted sender) smtp.mailfrom=jgg@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1739971901; a=rsa-sha256; cv=pass; b=pma1uxdCRnQK9sVW+MTkGYtxNLHxNaGT6Xtb770gqjHYX55422D7ISjR5hRdY/16l6Z7+f fxnOt+vLe1NusE3aOg5kSDrWbnPHa0VWihxlPUO/pt5UAlQA2jq4vrORFrfgfeo5C8FanK hMwAvPjUJjvGGb4SKschzjUJuNeDkQQ= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=O/9p/E+zSK81ub6bipwhF1IfthaH2tzGkvG3CD2o4IH8DztNktw7uQG3GErqkdRaie5zpwmL+pEyMVnLxYW61IEyhN8AJbk2glPbEu4SSctXdnMXTpKOu265fYGFdr9wpyDyyHzNM5p7X6FJm8Plq31hI/CAMkehG2t9deHlT/B4xxC5Jq2i7PnHOT+Eq3VyfwdscN9/mRIC1vZ0CbgavqWvz12DGbsmQsm+UttQOgeIryypWV9awGA4EYOJ4foTx3Vx9YOHKm4clGqE+eBUyx4Jmh2fwkL3GGqkyDZUgUhO4yGVeX7DIR2ky7IqFO/br1LC0R2nlvxhIxHDPI6UUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Tiw1uzBO6Z7iE7rrpV8RZ0KTH2cyQwd8yq3WE4KKFas=; b=MYDKdjhquidM8xH6R0wzQPJM1XtF0GfUOlp24GrwjozKU3I0+fWx7/IzekUTjnpz5/uLdJwC7mjbcR/et/cqGq0ubqXvjYua+urqf/87/jhfcUTBVNtqJBAHVJz/DgXT7+ja+L8Cv4n5I2oALtPNMBQEY5jiae+GS4U8JW4EUtw16d13bqPxi2M/M3rn9kOzi1xWe1kU40GFEOmXOSkQk4uWwBg6f6JgDD0Atw0+TfwhLP/9ymIMsMbIgka4LGjDaqvT5+m1URlpexRKGRgUrjt9YeNn02UfbM6tYvGqxNzm69vaWYrrcoL2SlwQI1k/rD7F2MzYP2oXjqYPSmf6dA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Tiw1uzBO6Z7iE7rrpV8RZ0KTH2cyQwd8yq3WE4KKFas=; b=q/Dq+TqvDuUFZ2VTIe6kDhvIKlYVUbXDyUGckyMccfU7LfF3/Maku/CeC7LMUnuxytna8VAvauAERcqUAHkgDKynf/LOgqsd4g7gVh9qcfb6UAEys+eMyaJtMJMC/DWoVFnbM1Xxp5Up/PaohuWYYS/eo9kWKk1p8XIhXa4qyGipjvzTMhntggwnXxJ4gKx2lymd3jgUqjmoKlPcRsSJO/r2nwAQmh8p1+WZwVTcQ4v+RaBP9jsln9dDpmvQPgutuGD2xgdtnhTjQ/UUzhR2C4LU3aY8LgpJrzgmVvhfma57zNvVhjr6NAtgqbfgsVh43TXKh5DF85xel2zWKZZgNg== Received: from CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) by LV3PR12MB9120.namprd12.prod.outlook.com (2603:10b6:408:1a3::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8445.23; Wed, 19 Feb 2025 13:31:37 +0000 Received: from CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732]) by CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732%4]) with mapi id 15.20.8445.019; Wed, 19 Feb 2025 13:31:37 +0000 Date: Wed, 19 Feb 2025 09:31:35 -0400 From: Jason Gunthorpe To: David Rientjes Cc: Alexander Graf , Andrey Ryabinin , Anthony Yznaga , Dave Hansen , David Hildenbrand , Frank van der Linden , James Gowans , Junaid Shahid , Matthew Wilcox , Mike Rapoport , Pankaj Gupta , Pasha Tatashin , Pratyush Yadav , Vipin Sharma , Vishal Annapurve , "Woodhouse, David" , linux-mm@kvack.org, kexec@lists.infradead.org Subject: Re: [Hypervisor Live Update] Notes from February 10, 2025 Message-ID: <20250219133135.GM4183890@nvidia.com> References: Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: BN9PR03CA0044.namprd03.prod.outlook.com (2603:10b6:408:fb::19) To CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR12MB8659:EE_|LV3PR12MB9120:EE_ X-MS-Office365-Filtering-Correlation-Id: 55c4b4d2-ebcb-4831-a8c5-08dd50e9bbf5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|7416014|376014|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Hn3NA6sDdsNB4HpMj3syfmIU4hrfJmk4P2NXECU6l+qnc/pOuPsX8EUs5mNT?= =?us-ascii?Q?EJNvSxdVNwRncwOs6rYjfR5GcHV1TXdMczxx/si73qmAMMIXmmS/QLvdRQ0O?= =?us-ascii?Q?E8hZhx4ujI//7+7PsgCrCFKiLquIBMeS584WPJ51IuGQLgFrQsQqlH9zSBF0?= =?us-ascii?Q?aLpDp+YVsl5RSnm6qO2IPp7/Mdy5sig36kGcPFPPE/tev30+72S9kXsRjUn5?= =?us-ascii?Q?pfpHb6jpjToxn6vAZO2EtMT6kRpOvOWzpsUsFMj+xkRKTYP8TkGck+VmfWWM?= =?us-ascii?Q?20SYYqshO9kbVmp10a9tb5qwKPd/6KBP7uwiRxgIqjy8qn31WDaNNzBfzjQ6?= =?us-ascii?Q?/cnhP5T9hP0c5bjn/2ex3hvDP6mcE5OzwFDahgsXrC+81x0yUUE4zNsVuiUQ?= =?us-ascii?Q?wfPOskriXSqx28gzqgcFYZfoLwpd3ixBMz8PlskIR2dk2f7cxSuh72AlAj0o?= =?us-ascii?Q?wNcfhi0c5qwzPMbWbPp23Onynitf9+18/jItM4wb1D0c2KPf51w4+/ZWl9M4?= =?us-ascii?Q?JHIp3iPP7kUkR0Kl7+LiDkcOSlRytdJc+Y56axwRJLSlGInpu3QvE7PX0yxp?= =?us-ascii?Q?8xHyUXemCRsYWttWb3ZuuBgAxalzuI9g9sfxcnpVrd1ar8D925EBM4fseRxM?= =?us-ascii?Q?FOXoLVS44SC+pySbOWcFgi49IV1IlI6Z5DS2OwSmGhMbPdM39UZ+9fKED81j?= =?us-ascii?Q?LjGKm7FfoN6+lrvtN3OglWZBKPHyO/qizxiJ7HXyfdsLGw3Cz/s07Wv6O/Uh?= =?us-ascii?Q?wfK4U8oFXaoJyKvHT4hfNe4cGo6Yhgvte8gM4ZeWl3PKVNERV8zUfjUtYU1E?= =?us-ascii?Q?aa24aEcvPtikQq3aoxoG9Azzt0I63HN6y1qcbYsyNfhcEQpKf885zrkeS/R7?= =?us-ascii?Q?NS3Db4fFq2DV1QbVYWyW3qh9eo5j14ZUuMkMKtpDZFW03RFxCcEkfMY7Jv2n?= =?us-ascii?Q?R5Imbi0sdR6O145QjAJAwY9CbnFBuxit28SagoPmD9x1stPAng6TByBvpypO?= =?us-ascii?Q?HYU45JlkvMDUN/gnLSQyY101IgNqMsmFsD6xjyVBCspAofMyPjbpi6B6up04?= =?us-ascii?Q?6uBl3iCJnzVLy66CPnvFrd/aeBR2ojmeiRKRLY0gWF0hnuvYTvlDD/HLu1uo?= =?us-ascii?Q?1QAIg0idHzHOySmDT4rJN3vhsEEEk8V7IpFoZXQQ1ZeQLP8AtMlyNwNbE/rb?= =?us-ascii?Q?rEH82lNODnWFbCZJGwuuN97qVLiCpq18RQxcsbb/mdlTbnrMN34u7ycR5Wxq?= =?us-ascii?Q?WpmF7ONG4Fs1H5V0Liu1BzgG+IsTZ7ZRUsaIxnlZ8QHObPZJpYf8V6rG9MAA?= =?us-ascii?Q?ue5MQkFMYPLLRLc4p5rPca56l+DHoDrVOE9NyPdjoJrvGnJUw1t3fYuljcYM?= =?us-ascii?Q?ppYNvjXc+HikXFWtAcYc9IDy5BNg?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR12MB8659.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(7416014)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Cfz2z5vTmFD9OtIpsMsw4l0dA+/ZJCirtcLAzPAAJu2FXK9w6yHUNjIdpZju?= =?us-ascii?Q?qR5nRZGU4mf8tTVpsiZH29HixTWrs2mD6IQfthPOR3B42ZP1nQSPvpKZm27h?= =?us-ascii?Q?f8W7O/Y9fvQ3dZtv6h823hxACaRyuO4RfAM8vKpLltTsaBDdvBlT1LOmo5pp?= =?us-ascii?Q?hkGOBa3Hk075dTvJ84SijvPwxnvA649EQ8QaFpCbx+0Ap5bxzP1WMRfhVkC6?= =?us-ascii?Q?79uMakgJhizFr3wZ2MDfJDU5gjzc0QjoYxGOnM/edOE8F9PBpJ2N2Iip3buw?= =?us-ascii?Q?8k2k5qOUkYFImrUCwMTQr6H5CHQp/lh87QDQl1SiP0g4u6kIhXAsLY+5YBro?= =?us-ascii?Q?iIFR29sikBiIwG2yUaXsfj6MzwcWyzJnptCxa42wtGNuLJ4sDhbWiHZ5UCzl?= =?us-ascii?Q?PQPBPT3kzXBBO7pFWeHAxOCjOqrbvMlGZdyJN48esDHXXgqJfq6UxG4teNqB?= =?us-ascii?Q?bqmetabJXDfCyaEG02JMkgn/OqMOGp5fbxR1TYEwCKt/xes0zAJY6nF1Dh5Y?= =?us-ascii?Q?LdL4onsnVtd2KRitvB1gjDcfgsV1rguvXSpN5HVrcIdSI/zPrGj8V68L425m?= =?us-ascii?Q?oxMIK5rJdPsyaPSU28q6ggZHfqjNpcsArrfMV/yjXnyN0bInjwA5Wt0jXvrB?= =?us-ascii?Q?oJUqsVgqEkUzLbsbQHZKbXgoMr1eR2WY0zH4lEskXg63CwXbDlJWCsKlLgJT?= =?us-ascii?Q?2WfNKjt9E7jYzXajKxr6/ejtSGUI6L8w5z0eeAkFxsLYnAMP0L2TKDWgDDHS?= =?us-ascii?Q?A7B+Ly9opdfeWkmaywPJdQg2SLK6ZvijvEKKAVab9iAl/t2NbMuyiry1l1fr?= =?us-ascii?Q?nz+OGejwa1IqduEAwu711Kr5HGkPYhl8pGlU0tvmEc4uPcEif3l14TLihgN8?= =?us-ascii?Q?AyypyVdq72Y2I8WPoUHAAO3pYscRB7347hIskYyAxFAWV94nYjd7wP0Wtjuv?= =?us-ascii?Q?Hw/xTtQgobwLc30PtFeY5PfNz5B6yXHMtalyPM97pyz/h81VnbJN+M5z6Lgx?= =?us-ascii?Q?nsAyFYyJTipmI1gHp+Xx5t7hJzQTdNRjxw/a6odMLF4AQ9lVxY8FlGMx+5sJ?= =?us-ascii?Q?5O+gLcX5uEjjg7uRKkzzjrWlBkmwyMK/F+ColimAJIYttfXudl7haz2iVY5q?= =?us-ascii?Q?ATXOQPmWW0twT92X4Qc2zp1UN2MU1qkvodd4h+/jyU/VXkk5JENGrqSkX1s/?= =?us-ascii?Q?P7vwTre4qb6nNYSNrBOlqO7hkO+jZwIFuFkETZq9/pu3RZHW3cmrUNrC2x60?= =?us-ascii?Q?JGU/p2srP9o4mdFCOkKTcKTKK3SvphixW7Q0VQsEaXOE8yJN7SIEEVIhxMNg?= =?us-ascii?Q?fB5VXo3xeeat9kFz1q6c2y+ZopPz+1LTmPgXTttX3gSw8u//K+jNWT3tSeWY?= =?us-ascii?Q?oCSiVWF2/lE160dCssa3kHOMwyNzXobNVekslp18WWLZ7CiMJshJgSJBF+1s?= =?us-ascii?Q?Egoyf/an/+XH89XIFRzWgAIj7CUYBBSFYbJFxequvMdsXM5lUQ81leAIAlGo?= =?us-ascii?Q?SW+RCXaR97v9x/c3S+IUi9o18ZY1efCsPP6SR2KdT85n67LjZbprURPIXs42?= =?us-ascii?Q?xK169q2YecVnw5x2dnjl8XYdrTobRJEKYIgRBMzm?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 55c4b4d2-ebcb-4831-a8c5-08dd50e9bbf5 X-MS-Exchange-CrossTenant-AuthSource: CH3PR12MB8659.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Feb 2025 13:31:36.9396 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: zf3x/pw3XhUc9CENUSvAaPyk2N2SwjC8NIT8ZlJy3EDVOUTvHL41tZSJyVgQ98hS X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9120 X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: C3A5D4001A X-Stat-Signature: a3c1izqp8tokbcnofcbfkezumacxd4o5 X-Rspam-User: X-HE-Tag: 1739971901-921547 X-HE-Meta: U2FsdGVkX1+MjL0gxHDUangWHQJqDJ357ChzDUyIgnkhf1BoHWc49QjU507wUttcpZ55+zUbCk0IHojkbo/r3HCppShEabvJEHGOGw1WX/ZEOgWxUpx4CVcAiHUu7P6/O6izNGo7RGv2i4hz2VGf3UdjZBR72m7+kC6jHmMOYkNNWgQ6o1/MTgQapSrSb13xOgd0ngP4FZdpRguOp8g9bmsDgh7j24/P1AWQbhZa2LZEN4LIYM6i04hE+KAI9c4RvsI0RHc4obVKECrC41wfLAjMWsE2zdAaSrJntR2nn/jiJGn+/f8Tq4VnAo5kWPUiMXWHM2dUOA90t5A2bgT4CouL1lolziQBQNdtols9mvcJpIj4Lcy1EEkg8+WZvQuyMrZJNLQQ+A24GvlxJ7wQJWjNqhg7yFZOrdEOvnOWOvRTIAM0pxMs2zlmldR+acwduR1GSGGKP1R1VqIkO55jvG4s/d53y8RanogD7vio3wy5OXk6yiLslj4y1iVy6lCSgucEbhckV7DkwMR2BLnJIdYBOusSBcotw4L0aq3JyK4k4s+XVxQIiX7/2OPNpdEP1dyzlBX/vUmaGkEbfvBlloPBbwHjRENPpoCOC2OZMAGtSZmsCmI3IOPVtnJ79V3jExSQKE7eYVt7o3we2wz1WIvo5/fq6ndYkI+eGvudRPJ5Gf6rk03W88WAdMOXlws8scFl+xPYBWtMe+sZw0U1T6gDh5YIAbGBa+1ZIl1OSxUeF/d+h+SUzCg9Pgo70L87YUsPDOkmHXY0cG2/1WmjkHXbZq6/PcORc7Hk0wUJl8qbpjdxZG6l6HRPY/TNdCj9Bv155jG48kfNqqFzHyiK4AgrhFhHNT0FiB11yPkCGRmRkGUABMNn5pmyJy2LAW0o67Jvkkm0tmVXgh3vabS3lCtXPd6w1YJvs1sYeMH9te+A96cWajirKtN3vAURX6GotYN4LYUsMzu6Zasd+av GzNhwwwq varO/r8AIkXk0jyUKgUnaACwzdYy+pOdUmTJHHLIiya2ZySsuc57jYVBcM0t3Cp/QFvvEk118/6ZBij6NcjnO199038kThD88Lt6+4nMgMeFdTTLO8qhkE7V7MxRIrHqUAHm0yzWVfW81kRvXsaX1ERA4xUw/Z491KD3Z4/7tgpNBZhbQo0TCxSQoqgrbx+vvNbffE2OIGYvOCanttqIymGs/QUVqgvICUjz0+WRoF3z1O2Ol9T5anTZAygdlTeCMdiROVP0C7mYDn8Re8nVyPYLF3tyGcyl1SaVteYEE2QCxez1Gc2nO2jaWH8VM4TF0mOVjaVqjSIrYDCS31gjIf/Zav2N3br7REQj7uL1PIpfYjOPbV4S7vfePXqBbwYm7gpXVHwYHK8TMZ+PTdbWGr2/fCMP7WG/rXWXBxq+/abO2L/IEnuGqJAt4Tw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.038688, 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 Tue, Feb 18, 2025 at 08:04:47PM -0800, David Rientjes wrote: > - the future of guestmemfs and what it becomes, including alignment so > prototyping can be done IMHO we need a generic FDBOX sort of filesystem and the ability to put guestmemfd, memfd and hugetlbfs (fd) into it. This would completely replace the need for a special memory-only filesystem. Most of it should be doable with the folio preservation bitmap scheme I showed in the v5 thread and is not particularly special. Ie for a memfd you take all the folios under it, preserve them in the bitmap, store the folio phys_addr_t's in a linked list of 4k chunks and put the top of the linked list in the FDBOX for that memfd. > - establishing an FSM for all of the various states that are agreed upon > with common language (when memory mappings can happen, what is > disallowed at certain stages) I think this is very important, along with explanations where people expect work to be performed. Jason