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 41013C27C4F for ; Fri, 31 May 2024 10:49:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D255A6B008A; Fri, 31 May 2024 06:49:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CADDB6B008C; Fri, 31 May 2024 06:49:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B4F756B0092; Fri, 31 May 2024 06:49:40 -0400 (EDT) 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 914F96B008A for ; Fri, 31 May 2024 06:49:40 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 1FA691A03B7 for ; Fri, 31 May 2024 10:49:40 +0000 (UTC) X-FDA: 82178370120.07.44FD2B1 Received: from mail-ed1-f43.google.com (mail-ed1-f43.google.com [209.85.208.43]) by imf08.hostedemail.com (Postfix) with ESMTP id 4EB5E160006 for ; Fri, 31 May 2024 10:49:38 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="2yz/kGnL"; spf=pass (imf08.hostedemail.com: domain of jannh@google.com designates 209.85.208.43 as permitted sender) smtp.mailfrom=jannh@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1717152578; 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=8rRp80lBW4FzoN8ncda3wP8nvCP0z9lrK+Jc/IWYduo=; b=NYstQx5qPBD1abCZ8YIqzhPSoB31IetqNfHFar+WZ87HoF0JIhNS7gaQNAw1nWRtaollxz HXqNwgz5b4mGr0Yl5IaTPUKyUsss7zehAXD3qgVsZXbdmVrW/wvlmTYrcTcIqu6xAsvyl9 xKB74RLs+J8Oq0bXgdNcEhKnJDjdDmk= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1717152578; a=rsa-sha256; cv=none; b=dj2/3K53Vt607zqf/NiRYbpFL1dcqYqQERW1LIedTuyLmlZ8XsW7HyWP9J3Xdg6eB0j1Jo WkR2PAq0nSpdmE1vTd5QPwGH762CjB1CPAcIcYSnqVOsxu/g7yV78N1IiKB6LsII/z2Y4h qybdLbaSjvKpXXAVkPDEV9aYckue0hM= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="2yz/kGnL"; spf=pass (imf08.hostedemail.com: domain of jannh@google.com designates 209.85.208.43 as permitted sender) smtp.mailfrom=jannh@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-ed1-f43.google.com with SMTP id 4fb4d7f45d1cf-57a22af919cso8946a12.1 for ; Fri, 31 May 2024 03:49:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1717152577; x=1717757377; darn=kvack.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=8rRp80lBW4FzoN8ncda3wP8nvCP0z9lrK+Jc/IWYduo=; b=2yz/kGnLQVLZRolvq0uGyE7opmo82vc3uC6UvrwhUJpQuMpfw7er8DlXztn2EOgrnG pUn7dXTysa0rgJpM/UcKhAyQtV7EMKT4q8IapmzNjdiTNpcz3bWKDrJp5VggwiHXasOz JQ7H3yUtJ9eXbpfT6NQLlGR7Tv1DMNTnuKB70UBDZ+E8m03h8hkTr3+x7V+AQwzAAcfP 0DUQIAHkMnKpptiP2Fw5mxrhr7eZ7F4FUNUjSuh5ux/y82qh6EwKA6pnGWQLCNYXMvES De59gSk7nLfaCNwEeqRQpppQqHWYoz3/U0MZFi60BQYXd4oTo1Fsnr3ngwM6qEef5pX4 3zCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717152577; x=1717757377; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8rRp80lBW4FzoN8ncda3wP8nvCP0z9lrK+Jc/IWYduo=; b=vaqLHhKTkJNAKufMzKeicVfHHTvlmPd6iN19+epw5+1cpASc5DNtZBsdSHD1UFbcxN FGOQY8Ha3BjqtW2x9s1C9vNZbbjtzslak5Oh1qfyxxDxvU776m99Hqrg33thHkaH2OBx YPTuJm0OaW2487tSHZN9tNW7orIKKu78EyyZMCez2/n991hI5ytRaX1SiaLqgiQ5RI4h xYvrp/oSr/w1XKJA0pt/V9VpUSJpVSuhRHBn9IL4rUKY32ZAYfZBE4Q94r6uNHNiyrNK UYi+JjpCesj537afPTE88H87OSRAHxBMIYfNVLTM0OSVeltQDgXb448ZpLsc/SjMuPPA z9Fg== X-Forwarded-Encrypted: i=1; AJvYcCXfrITzx0wwYDI778x+hdSmQS4gRrT+of4Wn3NnrU18BlN6MS5UyoWIEKqZ/IEh+q8PQljDSZy00mFaGJwG2ZjdCgo= X-Gm-Message-State: AOJu0Yz68ceywFEBhmZJWFGuZBViQXYFBnotlgJK38kP1EOTeeHGHgGd +p5gGxhbla3av/8mhf0R1qhP9CbYBZeUIZPlMNzwpYf9of4JiFVLY3AV+VasrfpRTdaVmzFuwbR 8t01tPkeFVeff/FhZ7qXnupXp7i+MHSgmhCU+ X-Google-Smtp-Source: AGHT+IGNvupsb1UVYookhWaIP+aHUuOsnl1pdEMh3RFuflcTYqmKBlgYK4b83wq+i4WL/kDsRqslbWqCLr6DiBSSCT0= X-Received: by 2002:a05:6402:148b:b0:572:988f:2f38 with SMTP id 4fb4d7f45d1cf-57a33c6bab5mr160899a12.6.1717152576620; Fri, 31 May 2024 03:49:36 -0700 (PDT) MIME-Version: 1.0 References: <20240528122352.2485958-1-Jason@zx2c4.com> <20240528122352.2485958-2-Jason@zx2c4.com> In-Reply-To: <20240528122352.2485958-2-Jason@zx2c4.com> From: Jann Horn Date: Fri, 31 May 2024 12:48:58 +0200 Message-ID: Subject: Re: [PATCH v16 1/5] mm: add VM_DROPPABLE for designating always lazily freeable mappings To: "Jason A. Donenfeld" Cc: linux-kernel@vger.kernel.org, patches@lists.linux.dev, tglx@linutronix.de, linux-crypto@vger.kernel.org, linux-api@vger.kernel.org, x86@kernel.org, Greg Kroah-Hartman , Adhemerval Zanella Netto , "Carlos O'Donell" , Florian Weimer , Arnd Bergmann , Christian Brauner , David Hildenbrand , linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Stat-Signature: 7qnr7ohambmf4qsei81qrg3ygdgnx5g9 X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 4EB5E160006 X-HE-Tag: 1717152578-473600 X-HE-Meta: U2FsdGVkX18FTVumQJpPkC59Ak0o2bNkKLKQe83+75tgYadv34azPkGPt8AjVAoMe7+cUDhxnbWWLDhTXaPRVVAoP8AMgQmyVmj2bvOPlrBfIZQbIBYcdytssabjZ7O78mD82Y3OvZqSa4JQZ4c16k+16aoDhrIMqPWABfP1JPE7w/BaSqqYFaJuJCZnaJVgl0No7OSUzC4sllhEKhJAWYpwV8RQlIh/hZhyV1yK4AKwm/e/97B+nezfT7CgIDfsGYquBPgcnD+4Y7MstOxyM5pkcjohoQ7p9BHIN4SlMqjawsf+fHTR+PkZFMlL56OtCVk2l6ONUlS3cs51FfoJ/H4evE1CqGd2o18Bq9gRAuGV6cMtGGuK1E+Uyi3M0SI0/Q96ubenXUJQ7Siyg0gS98nrCHURwcix2J8m+ayVYV9dwYH/kTt2ncFvlKvC1LKUsxyhOzfHFyKjnrX7wpPQxXFvggs+CQMlX3gSQkcUiDtCPlLkzvzjNo4ZeV1pCZfKXtEYir+GmLSDisWwdwJIZYsbB0vNYUt6/QwDtfG2qk9mOrYlfrIcdr0bJnOjuFVeUNe0CrjvhHmLIwkBh1TV6OtPtRHO+qVPEBWO+AHtOHjCxO5fIY88uMaE/iLgBu1PPH/T/yccSQiYhEg1n4gd5+xvEV/94Uriufx6Jhgxpqbt29xVIsFltIx2Szt4K1GCvJwU0T1lYbYeWHzxqGYdntFxbHXVERUXeUBQjJD9BNdXa2CQujpWqLuqL8xaoVwEIyK+fw/bTEEk174jusMSOKhCAoTb+UIOl4ydw6LLaNxVE9PF2Md9Q7/oTsZcGq7i+0/3W0SA1+h3UECqQOAv9ypHVjnuOgqbSGMHBj8TKxE5TUmAkQSJG/mYu3CpCwHETFFbf+IkG3TyWYC+lqP0iOo29G5Qt2+kowRlydiZUch998lHwEJUUyTy+iA2yTbQ+Bhou9VxpaLKDHRYZM0 t9yVGpXY fQlkdoxQeJZEmQ/a/zpI1RDveNmOcYn+9D7cDTbTLGQN060er0h+KURh0Q4WN5rcubG7KywCs4by7rYFOKLBDmwx1Yj2YhIkV+3obLripoLRnblnDG/gkohfzLXwnhGUXYCGfq7D3smZushwuxvUcI9ZCeAvw2A7poIKQzUj2pd6wBbbVGE64B4UxzUIbrogM0UZcq1c9UlFeMe3hXM7wHaOA0sW5Qe0+NW2QXjnBY9Rth4rZEikU8d3x2TLp3rJAb7sC8/crxQ5lJtvDc3NaavV696J0It3condXpjT+lBvB9weQozCi2cq6JJ++NCzjbrBCVlI0pIFy7sc= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000046, 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, May 28, 2024 at 2:24=E2=80=AFPM Jason A. Donenfeld wrote: > c) If there's not enough memory to service a page fault, it's not fatal. [...] > @@ -5689,6 +5689,10 @@ vm_fault_t handle_mm_fault(struct vm_area_struct *= vma, unsigned long address, > > lru_gen_exit_fault(); > > + /* If the mapping is droppable, then errors due to OOM aren't fat= al. */ > + if (vma->vm_flags & VM_DROPPABLE) > + ret &=3D ~VM_FAULT_OOM; Can you remind me how this is supposed to work? If we get an OOM error, and the error is not fatal, does that mean we'll just keep hitting the same fault handler over and over again (until we happen to have memory available again I guess)? Or is there something in this series that somehow redirects userspace execution to getrandom() in that case? > + > if (flags & FAULT_FLAG_USER) { > mem_cgroup_exit_user_fault(); > /*