From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dl1-f52.google.com (mail-dl1-f52.google.com [74.125.82.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3D0901EA7CB for ; Mon, 19 Jan 2026 23:34:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=74.125.82.52 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768865696; cv=pass; b=i2ZZaGq14YJztSKut2ypvAZJBOdVfIZ5qY6BowflZL3TSytopkMXs9+9E6QYQuTHYlPD7AVWrd+BmHJ1N+EKhlACJwCADIWkCRSF6maIXFJWkMaEPi4g9akmKNZZgpcVMj1o7rHY+R0RnvWSZxu5TlXlVdmDcJSwW8PB0OwiFHo= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768865696; c=relaxed/simple; bh=ZZ3bHuhkIR99WX0mMtcMVkbpFCn0Hj9dtyBxtjPmz8o=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=J0KUt38Zc64eautzZCZX/Ec81qNlYUDgBPLqc3HSMVElIuTvsXMbUyx+yIPqHvNPqL8cg2+KL+o5opoXXHonX2R2Uk+4SMcQKK66C3MVAZTzGVlkUhcCFmhKzf0TTs4XIdv1OMin9PPVg+94bcFsXUnSYUJK2Vm0AYAtASYEjlA= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=mH6vWDt3; arc=pass smtp.client-ip=74.125.82.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mH6vWDt3" Received: by mail-dl1-f52.google.com with SMTP id a92af1059eb24-1233b172f02so5930637c88.0 for ; Mon, 19 Jan 2026 15:34:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1768865694; cv=none; d=google.com; s=arc-20240605; b=docjedEfSxtZjdZ8ZEBfEBhPgLOapLbmKPBpj4JM3hBqHdDdaSn6PNL16nQQiy2z5a 6sVP+Qbp2HsTKhxY6FOKXguayFfN5VF2TZgDnkk92taWMnWVx/LfcfmEQmREk5ANuqe4 ywanPmE/IM0ORJT4a79lwwEApFiOhfq2nG8DZG+zFrXKG+QQnAIPI2So5ZTG2LWbiE6F pUo+7RqAE3PYDKVeyQZaGK4pHLVg19CmEJ2D3QITT1iYN6xLvmsDlDbz/v2kZNNA1QLD aGGmdGYz++6e60G0TjijdC1DMdllD/fbrrqlKA4E2vJLE1xm0SR3Qntho3uA04HlGqoL 8wZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=ZZ3bHuhkIR99WX0mMtcMVkbpFCn0Hj9dtyBxtjPmz8o=; fh=DdMF/k1Wqd3SFJq1ogciDbcToXi4JPE74VQk6xudkDE=; b=Nqkcayir4GxUV0vapXLZKYev2igp37j4JvrIMSCAisl/oQjRCktEwI77VZyZ86Okk9 MFKpOPOpJy56F7rIgk2cEwq6acv3n5p/HyOFUmQBRr3E2mS1UuMhQPCzIa1CncJlf9ob R4DlA67RX/habd9Dsun1uqIl5XdAHOe/Vo3182XP9cqkIeLA/AiRuI4nqf7p4nVjJivd 2gEmwgIeML8WosGjmXTJh9koEB7TlYb7f4nbYeF7cUb5tGHmFIXXdf4VJvn8PMlvX7sP klGajC+viW26jpYy8fURridS3mN18IKj6+dhO0+YNeuRhS6ajgPjRJIkk1THr4DCBsmz N/PA==; darn=vger.kernel.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768865694; x=1769470494; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ZZ3bHuhkIR99WX0mMtcMVkbpFCn0Hj9dtyBxtjPmz8o=; b=mH6vWDt3ocQ+K9Y7ch5dtPt5ZunVJmaBiuvAdXA7Ouzp0l+Sd81SNh+KcJwYVw0CKH ynWyoQVwKLmWqV4H3Xwq7cfsl86SrszM0KX8JbXPZwu/XikdsnHTANt7bV3meNyOjSy+ WsJdahH5tGdlHe2sgFlZVmEuPKBXc9/WPQjwS+MVoYicOK4xqyJ45xvLXkPDLiOavtWy MwgM9J52RbzFqqDIfHAQFjsjjesg2IbmqZh1SKqJK5iRXyrGM6euUg0XzovN4izDsQur SF3mAqZImOdP5BaJyyk6eQWWf6Cu2u/LoRQ2A/kcZ60HR8BtbmO4CkJnO8BxtzoraPBS HJWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768865694; x=1769470494; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ZZ3bHuhkIR99WX0mMtcMVkbpFCn0Hj9dtyBxtjPmz8o=; b=HVB8QR/KshaPAhh3MlswhFK02OQ0WeqeZeRqIWLKiDZqkqBa1N0+j2OS4sn3i+WGQ6 zLGMuiluHIdvlQahhXQar3iiUFk/N7g9/fsHQZEt4n7yp5T2BX+sKVS/9CWi5qYS/2vY FLh/yGyaSVGJnP78PuDLDSVZ8UdxMD5CEoocEyNq9rRQp6HSXOFXI7Ir+qrQlwmff2mS Jr54iic2B9OxwPQZsqxdkqdBEMQ2XbffWH7y2iqmfKv65auSAJLepdB11yiPyQhFme79 9RWJdAfrfeqmr9XjFS2gSyIlqsVqSGQmCDEDqJXJgblvqA7XZA0ebUvyA8/OP6nzpcGv urPg== X-Forwarded-Encrypted: i=1; AJvYcCXKvLVjq12wUWGmXTop+fTc+mUM1Otdndi7OevkYP5MJQ/PdFoQ8CUQMtIxyv783/zqHwguvfVYALKuK1U=@vger.kernel.org X-Gm-Message-State: AOJu0YyFoyrAMcPa6PIga/fGdsHmvVFX4prkytWivTnPvWY3AtA2WBGU OTCeM6i9GoBKCccTn9YmL+I5s0PJfBKJ83c0tZZwJYz47qGadR+rlXA13B9qLYL+CGmPhREdUHG /12SPsPpfVRCWcqUjZwh2W7RZBTdQl+I= X-Gm-Gg: AY/fxX4+MPRYsxVNI1k9kK8PRyuufjPF/Pqe9NI10V5fjj+wnK63j2qKadh3InMDUxI c4u7ZYq6JgovvSfcMs40h44152VBCgjf1gKWvQZzOJUNx9NclOSISctl2HpkeQ3ksaQXGd7+fEm ewesnuDx2oqEIZh3PBxvzupcTFjewg5SpSF0zIUcynleUPsiOTgYODFXAb/eD8itiMkHbyaXI/v wVDP9pVh+nMC1YxQjd5yT3BCWU1d4weR1ww31mltTTvEDrR3OJA8cXoJG57KUxMtl5rPyPS8YCV aYk+5qqqO2+UHKWFO8XWEQ82LKI= X-Received: by 2002:a05:7022:eb46:20b0:11b:95fe:bedf with SMTP id a92af1059eb24-1246aab3428mr65745c88.27.1768865694289; Mon, 19 Jan 2026 15:34:54 -0800 (PST) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20260119071039.2113739-1-danisjiang@gmail.com> In-Reply-To: From: Yuhao Jiang Date: Mon, 19 Jan 2026 17:34:43 -0600 X-Gm-Features: AZwV_QhrkvTrXYGNnwhF1DWukVwYJ8GmYYaxLKmVuQL8w42ClSQRPQ1oHjc-dFY Message-ID: Subject: Re: [PATCH v2] io_uring/rsrc: fix RLIMIT_MEMLOCK bypass by removing cross-buffer accounting To: Jens Axboe Cc: Pavel Begunkov , io-uring@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Jan 19, 2026 at 11:03=E2=80=AFAM Jens Axboe wrote= : > > On 1/19/26 12:10 AM, Yuhao Jiang wrote: > > The trade-off is that memory accounting may be overestimated when > > multiple buffers share compound pages, but this is safe and prevents > > the security issue. > > I'd be worried that this would break existing setups. We obviously need > to get the unmap accounting correct, but in terms of practicality, any > user of registered buffers will have had to bump distro limits manually > anyway, and in that case it's usually just set very high. Otherwise > there's very little you can do with it. > > How about something else entirely - just track the accounted pages on > the side. If we ref those, then we can ensure that if a huge page is > accounted, it's only unaccounted when all existing "users" of it have > gone away. That means if you drop parts of it, it'll remain accounted. > > Something totally untested like the below... Yes it's not a trivial > amount of code, but it is actually fairly trivial code. Thanks, this approach makes sense. I'll send a v3 based on this. -- Yuhao Jiang