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 C9C5AC02181 for ; Wed, 22 Jan 2025 22:30:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2AEEA6B0082; Wed, 22 Jan 2025 17:30:01 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 25E8E6B0083; Wed, 22 Jan 2025 17:30:01 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 14DEE6B0085; Wed, 22 Jan 2025 17:30:01 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id EC74D6B0082 for ; Wed, 22 Jan 2025 17:30:00 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 56F0C120755 for ; Wed, 22 Jan 2025 22:30:00 +0000 (UTC) X-FDA: 83036531760.21.6C09403 Received: from mail-qv1-f43.google.com (mail-qv1-f43.google.com [209.85.219.43]) by imf20.hostedemail.com (Postfix) with ESMTP id 5766D1C0017 for ; Wed, 22 Jan 2025 22:29:58 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=VidOm5cR; spf=pass (imf20.hostedemail.com: domain of enh@google.com designates 209.85.219.43 as permitted sender) smtp.mailfrom=enh@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=1737584998; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to: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=RjXLTwokHULFLJy9HXfEAVLYI075PwVsMqVHUQWpd8A=; b=SMj/twNemHHNdbs/VHp2HhKzmZjblzu7Lpbk27cl/m8HNg9XJqCfw/cqipbiia3rnORttr u7jnz02bJrashFIaS3Iip8OcvaI2rqRiF6U22JfQfa0Qc6mgzOaKHc3pbvmN+VJ+mBW3BD aBOsJlntM7/0XopbxvT/3om9I5OHTXY= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1737584998; a=rsa-sha256; cv=none; b=tvv9K3OPe5ZignLaD8ZVsx6LYQrODNV3N/LAefnBsM21LnuPhLUEWz2qdhLsNpNqfPfTpx trkbpwo4QHnvS11LpEttnHDSh+PVPZ7HeiO9lIUqwNAWelJ6NmtFh8dE6cKTKPGJUpNfs4 puQk+jxqyTUcFYhRDsu+ehw1pbYZlQE= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=VidOm5cR; spf=pass (imf20.hostedemail.com: domain of enh@google.com designates 209.85.219.43 as permitted sender) smtp.mailfrom=enh@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-qv1-f43.google.com with SMTP id 6a1803df08f44-6dd16e1cfa1so3065596d6.1 for ; Wed, 22 Jan 2025 14:29:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1737584997; x=1738189797; darn=kvack.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=RjXLTwokHULFLJy9HXfEAVLYI075PwVsMqVHUQWpd8A=; b=VidOm5cR5GiMWIQ7X3//wE0TqSBtLhc2tTtJesdE0qlneHH9SpMk5Q77pCpFgAXtsV Rasqu1nmLGODWs6P8Fj7Bs8Hvhk335pJ3Z7Nk4RWIcyaYwz2Ky8PVRZnk5ZQeQTovlYm H0UEI3azIHu7jaBeeeiJ5q74yiMy54tjp3qNkqEskYgK9HsNdEgvakJa7pUOnnZ26IXm nC6Q0E3fHtkOsLqRRHMQu5lQV+gye9mUyVQNXUzxaENbd8XyPok0cLcsJ4AO+W4l0Dni MSJC0mg1i6F6Wlu0r7vsM4i9W8yW8+sx6lgJbu3fZay/q+Ny9WOUin2KWtz8qL8IgFlk N9zA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737584997; x=1738189797; h=content-transfer-encoding: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=RjXLTwokHULFLJy9HXfEAVLYI075PwVsMqVHUQWpd8A=; b=NWfugp6UXubcXRWkwjmFE/q4CewN5DPBBhd91UT9rZO9mbCIOD1bE4PxsbjAggU8Pk Px7MM65TddRL1vY/qPdI/GUTvEmQUriBT4h86pzy5pxw78641se8MJUv1vhfj1cJFNLC otOzlmH0J0Dn2Wn3F2aBm/tPKuzMfnFfZj6dsC5OGkdVBBJy/6sIIH62QR9MseXiRk6V 1tb42nBEF/CLNEBnJaxlWAC1RNK1/fLEU++4GcqCO6mdQRohCtac+xsXrBaSkwd0SeeA SSPzYqRx4C/FQ6ZWQIF6f6U7fXWH2EPGh9Jc0129zzuX3dXVa8bOpXN8zjyMA4WT9A80 Z3BQ== X-Forwarded-Encrypted: i=1; AJvYcCWhO6LD2uXk57rH/KNcV7MvUmPkVS1QUn7b5ZSW57LGn9z+9BPVFLgQAOb2ubA+CTna8+SjLT+GyA==@kvack.org X-Gm-Message-State: AOJu0YwYSIlszlIhKTVpncLhqusGINuzTT6nqb+biAsRNzsKyQTJK9Oi J0v+Xz+r1boegLoDBU/aXBhjaD7EMec6tuS3/uLF5rTHA7/bW3N/YIS3ff4Z4TuRm/AP2kfxs13 iK3ESRt9AJC2NvNJfDR64gnfu58fFqjRoJVEA X-Gm-Gg: ASbGnct9xL96fJjmec5O1sHYQ8DGWQRB7N/erHiQq8X9e1sUuzkxFYJ+u7hSWqQX0wC GJwshS+WXc4zNQFIipTVZ1RqNg+WmGN7KY/CLvg0uYP/zaSos X-Google-Smtp-Source: AGHT+IHl/Af4JTdhFWW2PM+Z6WRkSU8IpaB5lz6jO7IT0H4wqoewjfMyn/Pr32wE6HlqHKUDuD8BMPoPIOCBzAP7pAY= X-Received: by 2002:a05:6214:5004:b0:6d8:97ea:4362 with SMTP id 6a1803df08f44-6e1b2236450mr399170996d6.38.1737584997118; Wed, 22 Jan 2025 14:29:57 -0800 (PST) MIME-Version: 1.0 References: <5cf1601b-70c3-45bb-81ef-416d89c415c2@lucifer.local> <7071878c-7857-4acd-ac27-f049cbc84de2@lucifer.local> <2e5de601da34342d8eb0d8319dcf81ff213c7ef0.camel@sipsolutions.net> In-Reply-To: From: enh Date: Wed, 22 Jan 2025 17:29:45 -0500 X-Gm-Features: AWEUYZnC1Tss1EargrTlUaRo7LZ2x5xCC0HcfgPRP2MqSe5DS782ycUSvQBO1PM Message-ID: Subject: Re: [PATCH v4 1/1] exec: seal system mappings To: "Liam R. Howlett" , enh , Jeff Xu , Pedro Falcato , Benjamin Berg , Lorenzo Stoakes , Kees Cook , akpm@linux-foundation.org, jannh@google.com, torvalds@linux-foundation.org, adhemerval.zanella@linaro.org, oleg@redhat.com, linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org, linux-mm@kvack.org, jorgelo@chromium.org, sroettger@google.com, ojeda@kernel.org, adobriyan@gmail.com, anna-maria@linutronix.de, mark.rutland@arm.com, linus.walleij@linaro.org, Jason@zx2c4.com, deller@gmx.de, rdunlap@infradead.org, davem@davemloft.net, hch@lst.de, peterx@redhat.com, hca@linux.ibm.com, f.fainelli@gmail.com, gerg@kernel.org, dave.hansen@linux.intel.com, mingo@kernel.org, ardb@kernel.org, mhocko@suse.com, 42.hyeyoo@gmail.com, peterz@infradead.org, ardb@google.com, rientjes@google.com, groeck@chromium.org, mpe@ellerman.id.au, Vlastimil Babka , Andrei Vagin , Dmitry Safonov <0x7f454c46@gmail.com>, Mike Rapoport , Alexander Mikhalitsyn Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: neyyaaendt44ho8get1779bphztd4wry X-Rspam-User: X-Rspamd-Queue-Id: 5766D1C0017 X-Rspamd-Server: rspam03 X-HE-Tag: 1737584998-799665 X-HE-Meta: U2FsdGVkX19E1Op0rKGSyAI97B4hMcMlBTvYo18ipx+o48RhJQ+HL1Is67Un88ekaJsMYPYdB//0miokxtMAFI+SEim6tSk5L0dNkwihAmtPBBO9xxyau4kra37x71mIGQRSyn+P7fnbwI39vDzvY7EU7W132AbUvywY7F18CwI6fRgvrSMcCX8qq5QFSKvpMhNcuf/7hhFpk3qIXJKgwg00aogYALpkq39bnk1tkLeB5UeeJ6eP8vExkCRZsdZQhImT4Pq6cdifQayEPAWaPmSU3foeHoShpJzN9cWjSB5QzIklsaJYdG62k1+rtLAkXhYnViIum8bilHQCKu/J1qtQE4CBfMrUrYooj/JhqsRJEsl5K1D6N/wjD/1Wd1XyVBiFkyUH15k8SBcgEPPKcgV6QanCm0oqGaMX4boURhiGWIs1AaxHVUYOMuNvrK+41nLScTPMwYCBt5o1p6Zqn3vOHZUsmozIIfS+JbqREn8UB1xdwLmSMssTnSfc7p9uqeKeO9PbjV7QARPjpdzp9PdXljy0wskvBSQJv+dIkzslqn8hB8kSQ9qrTKp4yP4+Wq5uxRmZd0RwvJQ0G3Gdk6CmEz9oOwIWpYtHHvvr7Sxl11808ap7I5PgKaGMaockvQEeMgc2AwnaUx11eNUE4KB0EOAQVp0X/PUgVr4Fg/AToNvQ6WaZZC/t+dV0jeY6vuh3PedarrVVubqyg8tuL6XEoZ+Nl2FPLwVrkyqCOMy26SbTxyrQLCO0uoc+8cSPQePSUfVKhB4qs7deUhw9PVWeu8I45yGcvjPRLx0+KPSkfn2MIcd2FPAQkok3/rw72ZE553C2SGi5TvwrB6O5qlwD9YerqJK4yOthCfylxBajrJX+2A+uLoPoegYIbxpp38kGWhOLqCnDrsdw/0z4JmS6rrXxkm6b92r5pHhzNLs3neCoe3oWBvP4s+4pW8knH+O7MgDymj3LyFnzTk3 0aROve1T xfQmoEO6ihnowrYeXn96OplIM/hz2azR6qbrWbUGsK9iju8QdmIwIu/vvopBas2PqcGZayuBo+ZXqge7O/z2zVM/J918lHwrTuagivmwLtiw39NPKiZVg2eb+KcleJEWQWgsLjctQiIVwuwWIqRlZkmZzn2xo1AC0bUCfIBxt1nnOr3c9YI6EwT7JduIN6r0o/cdjjG0RHNetLkPYIQSEv+9LmSH8TcRahDo9NWfYNT4CTtul+VBaoHzG63D4uqBvy8l6yr76+BcNyKtbR1kj/9fAxKYIl5qltUD586S30Y1rOydOUVaoQAGLrA== X-Bogosity: Ham, tests=bogofilter, spamicity=0.007236, 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, Jan 22, 2025 at 12:24=E2=80=AFPM Liam R. Howlett wrote: > > * enh [250121 10:38]: > > On Fri, Jan 17, 2025 at 5:08=E2=80=AFPM Liam R. Howlett wrote: > > > > > > * enh [250117 14:35]: > > > ... > > > > > > > > > > > as a maintainer of a different linux libc, i've long wanted a "tell= me > > > > everything there is to know about this vma" syscall rather than hav= ing > > > > to parse /proc/maps... > > > > > > > > > > You mean an ioctl()-based API to query VMAs from /proc//maps? > > > > i wasn't imagining an ioctl(), no, just a regular syscall, but that > > would work too. > > > > > Andrii had something like that [1], check out ed5d583a88a92 ("fs/proc= fs: > > > implement efficient VMA querying API for /proc//maps") > > > > yeah, that would work for the use cases i've seen too (some of which > > are similar to the ones mentioned in the patch description, but other > > ones too). > > > > the other motivation we've had that i didn't notice mentioned there is > > avoiding the awkward /proc//maps behavior when you have too many > > vmas to fit all the output into a page. > > We are making changes in this area. Can you elaborate on the 'awkward' > part? The locking or the tearing of data? > > The way you state the page, it makes me think it's the tearing that is > the issue? I think the ioctl would be worse for the possible tearing of > data. there are two main styles of use of the /proc//maps data i've seen in userspace: 1. i need to know about _all_ the vmas, so i'm reading the whole file and stitching it together. 2. i need to know about the vma containing a specific address, so i'm reading line-by-line looking for a match. the former is typically just for humans anyway (to be added to a crash report) -- so the ability to sendfile() or whatever would be something we could use there (though i've no idea whether that actually solves the tearing issue) -- so those use cases mostly tend to ignore (or not notice) the problem. for the latter, tearing is a bigger problem because what does "not found" mean? do we try again? how many times do we try? so i think the ioctl() would solve those problems. plus it would be a lot cheaper, and in particular not require [or at least "strongly benefit from"] dynamic memory allocation like parsing a text file does. > Thanks, > Liam > >