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 3EB3BC47258 for ; Wed, 17 Jan 2024 19:01:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A2FF36B007B; Wed, 17 Jan 2024 14:01:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 9DFC46B007D; Wed, 17 Jan 2024 14:01:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8CE366B0088; Wed, 17 Jan 2024 14:01:08 -0500 (EST) 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 732376B007B for ; Wed, 17 Jan 2024 14:01:08 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 28A18160499 for ; Wed, 17 Jan 2024 19:01:08 +0000 (UTC) X-FDA: 81689720616.21.3F882C8 Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf14.hostedemail.com (Postfix) with ESMTP id 34E29100029 for ; Wed, 17 Jan 2024 19:01:03 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=US3xdNNQ; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf14.hostedemail.com: domain of jlayton@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=jlayton@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1705518065; 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=eQWtCQeJQA0bCEqr3+mFTbwcwbFVXjqKPFtOHFMLmDA=; b=VNndqk6uv8O+WYdry8aYKqa+oRF/thm//Tc4BGg/r5bGcAXZfnF5yh9YRkyCPrjdPYWyxp 4Erl9Sb2JpvePvONKMZujNDbRbUYwQtNztx2U7YQ4B7+UkTwEWmDcxXRo/m/4wycnA4aMa FukTp0rlfOgv4Dls2cM/zV+jEl6MEOA= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=US3xdNNQ; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf14.hostedemail.com: domain of jlayton@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=jlayton@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1705518065; a=rsa-sha256; cv=none; b=czBGKtQ05S7xcXJozK7jzK9SO4KV6fOdlKvsfV59NWEteGUgXhUdTkhvh3Kn0y006FVjf2 KgtOYbkg6YuuIt2sg0lRqPXqNlZ1uVey8OKZWv6lSKVFmIMv7tiukt0LP+XFV4JReUqRxc DiCSZgX+vcq9+pp0HrRmsedLub7XOc4= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 1639CCE1B7B; Wed, 17 Jan 2024 19:00:59 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 61223C433C7; Wed, 17 Jan 2024 19:00:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1705518057; bh=zOVzxMH1jEzL8qTpH2uzriJt0wOismxaFPqD7Gou7Tc=; h=Subject:From:To:Cc:Date:In-Reply-To:References:From; b=US3xdNNQr4Q8fWAWb8ojdu+px3Ety9lVOLKByedWsqqgn1xb71oMBDztqoL3Jz36x M3U1K0F1V+m12dJQAwJfYInNzvRHSsUMGsk8g4aLzDsE98FelJiwWxOBFTT5S79Zrw kTxZ+oshRcDvMKovkdZWUx2lCJnTSD2Vfp8P6i6euBICKkWIl8Ub4ggsOqiLyG69qs mvQBeiBtQdlYO0NDbrsEA0uvOs5T28fthI264jqqzSKgXcozkIGXnmIYrw2OJ0KN79 Fqn/i3pOmcIzbjXvbDli70o4fV+sW9/wcpR3/hQ0Q8KTmdjOsPmB7K69zEko0WNI0T dmx3u1RvpEpOA== Message-ID: <6667b799702e1815bd4e4f7744eddbc0bd042bb7.camel@kernel.org> Subject: Re: [PATCH RFC 1/4] fs/locks: Fix file lock cache accounting, again From: Jeff Layton To: Josh Poimboeuf , Linus Torvalds , Chuck Lever , Shakeel Butt , Roman Gushchin , Johannes Weiner , Michal Hocko Cc: linux-kernel@vger.kernel.org, Jens Axboe , Tejun Heo , Vasily Averin , Michal Koutny , Waiman Long , Muchun Song , Jiri Kosina , cgroups@vger.kernel.org, linux-mm@kvack.org Date: Wed, 17 Jan 2024 14:00:55 -0500 In-Reply-To: References: Autocrypt: addr=jlayton@kernel.org; prefer-encrypt=mutual; keydata=mQINBE6V0TwBEADXhJg7s8wFDwBMEvn0qyhAnzFLTOCHooMZyx7XO7dAiIhDSi7G1NPxwn8jdFUQMCR/GlpozMFlSFiZXiObE7sef9rTtM68ukUyZM4pJ9l0KjQNgDJ6Fr342Htkjxu/kFV1WvegyjnSsFt7EGoDjdKqr1TS9syJYFjagYtvWk/UfHlW09X+jOh4vYtfX7iYSx/NfqV3W1D7EDi0PqVT2h6v8i8YqsATFPwO4nuiTmL6I40ZofxVd+9wdRI4Db8yUNA4ZSP2nqLcLtFjClYRBoJvRWvsv4lm0OX6MYPtv76hka8lW4mnRmZqqx3UtfHX/hF/zH24Gj7A6sYKYLCU3YrI2Ogiu7/ksKcl7goQjpvtVYrOOI5VGLHge0awt7bhMCTM9KAfPc+xL/ZxAMVWd3NCk5SamL2cE99UWgtvNOIYU8m6EjTLhsj8snVluJH0/RcxEeFbnSaswVChNSGa7mXJrTR22lRL6ZPjdMgS2Km90haWPRc8Wolcz07Y2se0xpGVLEQcDEsvv5IMmeMe1/qLZ6NaVkNuL3WOXvxaVT9USW1+/SGipO2IpKJjeDZfehlB/kpfF24+RrK+seQfCBYyUE8QJpvTZyfUHNYldXlrjO6n5MdOempLqWpfOmcGkwnyNRBR46g/jf8KnPRwXs509yAqDB6sELZH+yWr9LQZEwARAQABtCVKZWZmIExheXRvbiA8amxheXRvbkBwb29jaGllcmVkcy5uZXQ+iQI7BBMBAgAlAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAUCTpXWPAIZAQAKCRAADmhBGVaCFc65D/4gBLNMHopQYgG/9RIM3kgFCCQV0pLv0hcg1cjr+bPI5f1PzJoOVi9s0wBDHwp8+vtHgYhM54yt43uI7Htij0RHFL5eFqoVT4TSfAg2qlvNemJEOY0e4daljjmZM7UtmpGs9NN0r9r50W82e b5Kw5bc/ r0kmR/arUS2st+ecRsCnwAOj6HiURwIgfDMHGPtSkoPpu3DDp/cjcYUg3HaOJuTjtGHFH963B+f+hyQ2BrQZBBE76ErgTDJ2Db9Ey0kw7VEZ4I2nnVUY9B5dE2pJFVO5HJBMp30fUGKvwaKqYCU2iAKxdmJXRIONb7dSde8LqZahuunPDMZyMA5+mkQl7kpIpR6kVDIiqmxzRuPeiMP7O2FCUlS2DnJnRVrHmCljLkZWf7ZUA22wJpepBligemtSRSbqCyZ3B48zJ8g5B8xLEntPo/NknSJaYRvfEQqGxgk5kkNWMIMDkfQOlDSXZvoxqU9wFH/9jTv1/6p8dHeGM0BsbBLMqQaqnWiVt5mG92E1zkOW69LnoozE6Le+12DsNW7RjiR5K+27MObjXEYIW7FIvNN/TQ6U1EOsdxwB8o//Yfc3p2QqPr5uS93SDDan5ehH59BnHpguTc27XiQQZ9EGiieCUx6Zh2ze3X2UW9YNzE15uKwkkuEIj60NvQRmEDfweYfOfPVOueC+iFifbQgSmVmZiBMYXl0b24gPGpsYXl0b25AcmVkaGF0LmNvbT6JAjgEEwECACIFAk6V0q0CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEAAOaEEZVoIViKUQALpvsacTMWWOd7SlPFzIYy2/fjvKlfB/Xs4YdNcf9qLqF+lk2RBUHdR/dGwZpvw/OLmnZ8TryDo2zXVJNWEEUFNc7wQpl3i78r6UU/GUY/RQmOgPhs3epQC3PMJj4xFx+VuVcf/MXgDDdBUHaCTT793hyBeDbQuciARDJAW24Q1RCmjcwWIV/pgrlFa4lAXsmhoac8UPc82Ijrs6ivlTweFf16VBc4nSLX5FB3ls7S5noRhm5/Zsd4PGPgIHgCZcPgkAnU1S/A/rSqf3FLpU+CbVBDvlVAnOq9gfNF+QiTlOHdZVIe4gEYAU3CUjbleywQqV02BKxPVM0C 5/oVjMVx 3bri75n1TkBYGmqAXy9usCkHIsG5CBHmphv9MHmqMZQVsxvCzfnI5IO1+7MoloeeW/lxuyd0pU88dZsV/riHw87i2GJUJtVlMl5IGBNFpqoNUoqmvRfEMeXhy/kUX4Xc03I1coZIgmwLmCSXwx9MaCPFzV/dOOrju2xjO+2sYyB5BNtxRqUEyXglpujFZqJxxau7E0eXoYgoY9gtFGsspzFkVNntamVXEWVVgzJJr/EWW0y+jNd54MfPRqH+eCGuqlnNLktSAVz1MvVRY1dxUltSlDZT7P2bUoMorIPu8p7ZCg9dyX1+9T6Muc5dHxf/BBP/ir+3e8JTFQBFOiLNdFtB9KZWZmIExheXRvbiA8amxheXRvbkBzYW1iYS5vcmc+iQI4BBMBAgAiBQJOldK9AhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRAADmhBGVaCFWgWD/0ZRi4hN9FK2BdQs9RwNnFZUr7JidAWfCrs37XrA/56olQl3ojn0fQtrP4DbTmCuh0SfMijB24psy1GnkPepnaQ6VRf7Dxg/Y8muZELSOtsv2CKt3/02J1BBitrkkqmHyni5fLLYYg6fub0T/8Kwo1qGPdu1hx2BQRERYtQ/S5d/T0cACdlzi6w8rs5f09hU9Tu4qV1JLKmBTgUWKN969HPRkxiojLQziHVyM/weR5Reu6FZVNuVBGqBD+sfk/c98VJHjsQhYJijcsmgMb1NohAzwrBKcSGKOWJToGEO/1RkIN8tqGnYNp2G+aR685D0chgTl1WzPRM6mFG1+n2b2RR95DxumKVpwBwdLPoCkI24JkeDJ7lXSe3uFWISstFGt0HL8EewP8RuGC8s5h7Ct91HMNQTbjgA+Vi1foWUVXpEintAKgoywaIDlJfTZIl6Ew8ETN/7DLy8bXYgq0XzhaKg3CnOUuGQV5/nl4OAX/3jocT5Cz/OtAiNYj5mLPeL5z2ZszjoCAH6ca qsF2oLyA nLqRgDgR+wTQT6gMhr2IRsl+cp8gPHBwQ4uZMb+X00c/Amm9VfviT+BI7B66cnC7Zv6Gvmtu2rEjWDGWPqUgccB7hdMKnKDthkA227/82tYoFiFMb/NwtgGrn5n2vwJyKN6SEoygGrNt0SI84y6hEVbQlSmVmZiBMYXl0b24gPGpsYXl0b25AcHJpbWFyeWRhdGEuY29tPokCOQQTAQIAIwUCU4xmKQIbAwcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheAAAoJEAAOaEEZVoIV1H0P/j4OUTwFd7BBbpoSp695qb6HqCzWMuExsp8nZjruymMaeZbGr3OWMNEXRI1FWNHMtcMHWLP/RaDqCJil28proO+PQ/yPhsr2QqJcW4nr91tBrv/MqItuAXLYlsgXqp4BxLP67bzRJ1Bd2x0bWXurpEXY//VBOLnODqThGEcL7jouwjmnRh9FTKZfBDpFRaEfDFOXIfAkMKBa/c9TQwRpx2DPsl3eFWVCNuNGKeGsirLqCxUg5kWTxEorROppz9oU4HPicL6rRH22Ce6nOAON2vHvhkUuO3GbffhrcsPD4DaYup4ic+DxWm+DaSSRJ+e1yJvwi6NmQ9P9UAuLG93S2MdNNbosZ9P8k2mTOVKMc+GooI9Ve/vH8unwitwo7ORMVXhJeU6Q0X7zf3SjwDq2lBhn1DSuTsn2DbsNTiDvqrAaCvbsTsw+SZRwF85eG67eAwouYk+dnKmp1q57LDKMyzysij2oDKbcBlwB/TeX16p8+LxECv51asjS9TInnipssssUDrHIvoTTXWcz7Y5wIngxDFwT8rPY3EggzLGfK5Zx2Q5S/N0FfmADmKknG/D8qGIcJE574D956tiUDKN4I+/g125ORR1v7bP+OIaayAvq17RP+qcAqkxc0x8iCYVCYDouDyNvWPGRhbLUO7mlBpjW9jK9e2fvZY9iw3QzIPGKtClKZWZmIExheXRvbiA8amVm Zi5sYXl0 b25AcHJpbWFyeWRhdGEuY29tPokCOQQTAQIAIwUCU4xmUAIbAwcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheAAAoJEAAOaEEZVoIVzJoQALFCS6n/FHQS+hIzHIb56JbokhK0AFqoLVzLKzrnaeXhE5isWcVg0eoV2oTScIwUSUapy94if69tnUo4Q7YNt8/6yFM6hwZAxFjOXR0ciGE3Q+Z1zi49Ox51yjGMQGxlakV9ep4sV/d5a50M+LFTmYSAFp6HY23JN9PkjVJC4PUv5DYRbOZ6Y1+TfXKBAewMVqtwT1Y+LPlfmI8dbbbuUX/kKZ5ddhV2736fgyfpslvJKYl0YifUOVy4D1G/oSycyHkJG78OvX4JKcf2kKzVvg7/Rnv+AueCfFQ6nGwPn0P91I7TEOC4XfZ6a1K3uTp4fPPs1Wn75X7K8lzJP/p8lme40uqwAyBjk+IA5VGd+CVRiyJTpGZwA0jwSYLyXboX+Dqm9pSYzmC9+/AE7lIgpWj+3iNisp1SWtHc4pdtQ5EU2SEz8yKvDbD0lNDbv4ljI7eflPsvN6vOrxz24mCliEco5DwhpaaSnzWnbAPXhQDWb/lUgs/JNk8dtwmvWnqCwRqElMLVisAbJmC0BhZ/Ab4sph3EaiZfdXKhiQqSGdK4La3OTJOJYZphPdGgnkvDV9Pl1QZ0ijXQrVIy3zd6VCNaKYq7BAKidn5g/2Q8oio9Tf4XfdZ9dtwcB+bwDJFgvvDYaZ5bI3ln4V3EyW5i2NfXazz/GA/I/ZtbsigCFc8ftCBKZWZmIExheXRvbiA8amxheXRvbkBrZXJuZWwub3JnPokCOAQTAQIAIgUCWe8u6AIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQAA5oQRlWghUuCg/+Lb/xGxZD2Q1oJVAE37uW308UpVSD2tAMJUvFTdDbfe3zKlPDTuVsyNsALBGclPLagJ5ZTP+Vp2irA N9uwBuac BOTtmOdz4ZN2tdvNgozzuxp4CHBDVzAslUi2idy+xpsp47DWPxYFIRP3M8QG/aNW052LaPc0cedYxp8+9eiVUNpxF4SiU4i9JDfX/sn9XcfoVZIxMpCRE750zvJvcCUz9HojsrMQ1NFc7MFT1z3MOW2/RlzPcog7xvR5ENPH19ojRDCHqumUHRry+RF0lH00clzX/W8OrQJZtoBPXv9ahka/Vp7kEulcBJr1cH5Wz/WprhsIM7U9pse1f1gYy9YbXtWctUz8uvDR7shsQxAhX3qO7DilMtuGo1v97I/Kx4gXQ52syh/w6EBny71CZrOgD6kJwPVVAaM1LRC28muq91WCFhs/nzHozpbzcheyGtMUI2Ao4K6mnY+3zIuXPygZMFr9KXE6fF7HzKxKuZMJOaEZCiDOq0anx6FmOzs5E6Jqdpo/mtI8beK+BE7Va6ni7YrQlnT0i3vaTVMTiCThbqsB20VrbMjlhpf8lfK1XVNbRq/R7GZ9zHESlsa35ha60yd/j3pu5hT2xyy8krV8vGhHvnJ1XRMJBAB/UYb6FyC7S+mQZIQXVeAA+smfTT0tDrisj1U5x6ZB9b3nBg65ke5Ag0ETpXRPAEQAJkVmzCmF+IEenf9a2nZRXMluJohnfl2wCMmw5qNzyk0f+mYuTwTCpw7BE2H0yXk4ZfAuA+xdj14K0A1Dj52j/fKRuDqoNAhQe0b6ipo85Sz98G+XnmQOMeFVp5G1Z7r/QP/nus3mXvtFsu9lLSjMA0cam2NLDt7vx3l9kUYlQBhyIE7/DkKg+3fdqRg7qJoMHNcODtQY+n3hMyaVpplJ/l0DdQDbRSZi5AzDM3DWZEShhuP6/E2LN4O3xWnZukEiz688d1ppl7vBZO9wBql6Ft9Og74diZrTN6lXGGjEWRvO55h6ijMsLCLNDRAVehPhZvSlPldtUuvhZLAjdWpwmzbRIwgoQcO51aWeKthpcpj8feDdKdlVjvJO9 fgFD5kqZ QiErRVPpB7VzA/pYV5Mdy7GMbPjmO0IpoL0tVZ8JvUzUZXB3ErS/dJflvboAAQeLpLCkQjqZiQ/DCmgJCrBJst9Xc7YsKKS379Tc3GU33HNSpaOxs2NwfzoesyjKU+P35czvXWTtj7KVVSj3SgzzFk+gLx8y2Nvt9iESdZ1Ustv8tipDsGcvIZ43MQwqU9YbLg8k4V9ch+Mo8SE+C0jyZYDCE2ZGf3OztvtSYMsTnF6/luzVyej1AFVYjKHORzNoTwdHUeC+9/07GO0bMYTPXYvJ/vxBFm3oniXyhgb5FtABEBAAGJAh8EGAECAAkFAk6V0TwCGwwACgkQAA5oQRlWghXhZRAAyycZ2DDyXh2bMYvI8uHgCbeXfL3QCvcw2XoZTH2l2umPiTzrCsDJhgwZfG9BDyOHaYhPasd5qgrUBtjjUiNKjVM+Cx1DnieR0dZWafnqGv682avPblfi70XXr2juRE/fSZoZkyZhm+nsLuIcXTnzY4D572JGrpRMTpNpGmitBdh1l/9O7Fb64uLOtA5Qj5jcHHOjL0DZpjmFWYKlSAHmURHrE8M0qRryQXvlhoQxlJR4nvQrjOPMsqWD5F9mcRyowOzr8amasLv43w92rD2nHoBK6rbFE/qC7AAjABEsZq8+TQmueN0maIXUQu7TBzejsEbV0i29z+kkrjU2NmK5pcxgAtehVxpZJ14LqmN6E0suTtzjNT1eMoqOPrMSx+6vOCIuvJ/MVYnQgHhjtPPnU86mebTY5Loy9YfJAC2EVpxtcCbx2KiwErTndEyWL+GL53LuScUD7tW8vYbGIp4RlnUgPLbqpgssq2gwYO9m75FGuKuB2+2bCGajqalid5nzeq9v7cYLLRgArJfOIBWZrHy2m0C+pFu9DSuV6SNr2dvMQUv1V58h0FaSOxHVQnJdnoHn13g/CKKvyg2EMrMt/EfcXgvDwQbnG9we4xJiWOIOcsvrWcB6C6lWBDA+In7 w7SXnnok kZWuOsJdJQdmwlWC5L5ln9xgfr/4mOY38B0U= Content-Type: text/plain; charset="ISO-8859-15" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.50.3 (3.50.3-1.fc39) MIME-Version: 1.0 X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 34E29100029 X-Stat-Signature: x4drayg6s344wo1s3cqcspepyzefg9g8 X-Rspam-User: X-HE-Tag: 1705518063-131923 X-HE-Meta: U2FsdGVkX1/RvPW/MFuPrxZ4HxfMqLDWUfE7t6XOr7AtNLgd3Doj/oLwnAjZqiuawlQbmi75h7aJmTP1Beb5R2AftHqzg41H1uUmfyBLkmLjsQd59RQ2RAT+6TFdKrTDzpnX6WsZOi/5+yuBopi0WW9Bp1bmeANXXHQhZ0wZClW4CxQrQ+IiWsL+r7uhYHc40UMcW+0ebIEpzfFxbMD59mzAsYN2sYAhI8dXAgK0kMMNc0Xc3xGdtKspE1ftJizJakFZ/W7rcB6ePnmclt9NpLdZ7nWSwKLhVLGmhvCAZiCAuiLETpSnDIxYZ4Z1VFZsHIVkxlbs6b6mdGPYuJT+YglzJgXbNtQWlbsWS9csuGGsvGMWx5fmLwazgv3shqx6I4TnDW/fWX6Dp87mHgS7tIGapw6K5t+3LZHKjChA4kdwUKw9gdauqo5hhbw2DKWb7qPmLXSic7SnH4mH4PwOYMIE5Gk+7GafWiG8judRXTuID2u2Pf4Ck9jSyxHQykoj0emPrnAtAMj37sar65Kqmu7uXdgNnA0GCvwj1BJystO9+dFdTY/9R5aK2xsGXk2yFR3N+ZOWO1wK58N5n1R7DfEZVVdZC9raVhDYys2FcvDan01mpv524e2/vprKH1ImPa+XKDGK2weicYzBm/QAi3ZITs3IcPxyV33AhNw97heMmC4jqDZhGCVQCxRTyPJtXR80GzlLeetUqbWrfzrEEWjuonmBatMaaP96Vy3pQ++m481QWpx9ARNMTS5ZTewZnMD71Vkrb+Q5xAV9JAEEHFQpvQTsYjb6Niavb8nEaHfDVRKtAa3F+NbhD/Ht/9Bk2KoufRTm3wY25hXQoOZ5/NuhKbVfCSO3OOIeleDWnN307aKQikU2zJ7M6huullE+bx6/K+1I5kkiCfASCiCJM5aQqveGnGC+dkuzrn3L7Yd6sJDqSQlyM3LGW0JXMfVL3CP6PsxYnTIzI6pNqwh a6l+rvSG VVbyxLV2YuQKjD7a93VIBWqtT36ycSUVl/yLST+CX9Z9M+h9+P+UQ/XRJErXVUaM8lLwoJp/ZnmbNWXsrnlXVi9YirCSJ8n6jjQpL3YyDIjPzCRD7zw0lKGxe8udYXrmwmcDj0+QYz3sbjKxltPhMawGQKymw0PO3/YHQMbWBV/cEJjp03iwkVohKbPENDBofsFlReyW1h5Rb05T/8H22JWY8GnGE9A3iQOIatc8f5Ea/nkZnLnKsiC8mdw== 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 Wed, 2024-01-17 at 08:14 -0800, Josh Poimboeuf wrote: > A container can exceed its memcg limits by allocating a bunch of file > locks. >=20 > This bug was originally fixed by commit 0f12156dff28 ("memcg: enable > accounting for file lock caches"), but was later reverted by commit > 3754707bcc3e ("Revert "memcg: enable accounting for file lock caches"") > due to performance issues. >=20 > Unfortunately those performance issues were never addressed and the bug > has remained unfixed for over two years. >=20 > Fix it by default but allow users to disable it with a cmdline option > (flock_accounting=3Doff). >=20 > Signed-off-by: Josh Poimboeuf > --- > .../admin-guide/kernel-parameters.txt | 17 +++++++++++ > fs/locks.c | 30 +++++++++++++++++-- > 2 files changed, 45 insertions(+), 2 deletions(-) >=20 > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentat= ion/admin-guide/kernel-parameters.txt > index 6ee0f9a5da70..91987b06bc52 100644 > --- a/Documentation/admin-guide/kernel-parameters.txt > +++ b/Documentation/admin-guide/kernel-parameters.txt > @@ -1527,6 +1527,23 @@ > See Documentation/admin-guide/sysctl/net.rst for > fb_tunnels_only_for_init_ns > =20 > + flock_accounting=3D > + [KNL] Enable/disable accounting for kernel > + memory allocations related to file locks. > + Format: { on | off } > + Default: on > + on: Enable kernel memory accounting for file > + locks. This prevents task groups from > + exceeding their memcg allocation limits. > + However, it may cause slowdowns in the > + flock() system call. > + off: Disable kernel memory accounting for > + file locks. This may allow a rogue task > + to DoS the system by forcing the kernel > + to allocate memory beyond the task > + group's memcg limits. Not recommended > + unless you have trusted user space. > + > floppy=3D [HW] > See Documentation/admin-guide/blockdev/floppy.rst. > =20 > diff --git a/fs/locks.c b/fs/locks.c > index cc7c117ee192..235ac56c557d 100644 > --- a/fs/locks.c > +++ b/fs/locks.c > @@ -2905,15 +2905,41 @@ static int __init proc_locks_init(void) > fs_initcall(proc_locks_init); > #endif > =20 > +static bool flock_accounting __ro_after_init =3D true; > + > +static int __init flock_accounting_cmdline(char *str) > +{ > + if (!str) > + return -EINVAL; > + > + if (!strcmp(str, "off")) > + flock_accounting =3D false; > + else if (!strcmp(str, "on")) > + flock_accounting =3D true; > + else > + return -EINVAL; > + > + return 0; > +} > +early_param("flock_accounting", flock_accounting_cmdline); > + > +#define FLOCK_ACCOUNTING_MSG "WARNING: File lock accounting is disabled,= container-triggered host memory exhaustion possible!\n" > + > static int __init filelock_init(void) > { > int i; > + slab_flags_t flags =3D SLAB_PANIC; > + > + if (!flock_accounting) > + pr_err(FLOCK_ACCOUNTING_MSG); > + else > + flags |=3D SLAB_ACCOUNT; > =20 > flctx_cache =3D kmem_cache_create("file_lock_ctx", > - sizeof(struct file_lock_context), 0, SLAB_PANIC, NULL); > + sizeof(struct file_lock_context), 0, flags, NULL); > =20 > filelock_cache =3D kmem_cache_create("file_lock_cache", > - sizeof(struct file_lock), 0, SLAB_PANIC, NULL); > + sizeof(struct file_lock), 0, flags, NULL); > =20 > for_each_possible_cpu(i) { > struct file_lock_list_struct *fll =3D per_cpu_ptr(&file_lock_list, i); I'm really not a fan of tunables or different kconfig options, especially for something niche like this. I also question whether this accounting will show up under any real- world workloads, and whether it was just wrong to revert those patches back in 2021. File locking is an activity where we inherently expect to block. Ideally we don't if the lock is uncontended of course, but it's always a possibility. The benchmark that prompted the regression basically just tries to create and release a bunch of file locks as quickly as possible. Legitimate applications that do a lot of very rapid locking like this benchmark are basically non-existent. Usually the pattern is: acquire lock do some (relatively slow) I/O release lock In that sort of scenario, is this memcg accounting more than just line noise? I wonder whether we should just bite the bullet and see whether there are any real workloads that suffer due to SLAB_ACCOUNT being enabled on these caches? --=20 Jeff Layton