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 58725C4345F for ; Sat, 4 May 2024 15:34:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E57896B008A; Sat, 4 May 2024 11:34:09 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E08EE6B008C; Sat, 4 May 2024 11:34:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CCF226B0092; Sat, 4 May 2024 11:34:09 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id AF6B56B008A for ; Sat, 4 May 2024 11:34:09 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 77C331C1AE9 for ; Sat, 4 May 2024 15:34:09 +0000 (UTC) X-FDA: 82081109418.07.B8A4D60 Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf07.hostedemail.com (Postfix) with ESMTP id 68C944001A for ; Sat, 4 May 2024 15:34:06 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=linuxfoundation.org header.s=korg header.b=Q8oKj1vu; spf=pass (imf07.hostedemail.com: domain of gregkh@linuxfoundation.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org; dmarc=pass (policy=none) header.from=linuxfoundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1714836846; 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=8WyYfWz7aopogA14zCncnAMYAuYaj141TR6tar3Z5wU=; b=bISqOF2KRPlLpv6eYv6llr+Y3vCukraIzbJJLPCg9qrmEjnvHik3mkSkXE25WDyWcnssr0 QnmjNGcKLkXphZC7IeJIGn8ramp5fCXm7CX5eHfyISKa8070vJaXaqpMA+xqtOBLM7ZzXV kJi8zGfLW8F4JPz8M1YK1lm3qMiRFOM= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=linuxfoundation.org header.s=korg header.b=Q8oKj1vu; spf=pass (imf07.hostedemail.com: domain of gregkh@linuxfoundation.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=gregkh@linuxfoundation.org; dmarc=pass (policy=none) header.from=linuxfoundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1714836846; a=rsa-sha256; cv=none; b=wTMbbWUfsCjesRu1W1OpqJfFqUeZFDC+TjG5z6CpPDSc7Msi4XYcJeJCFksqjl5p6dGnpz x0peL0trR2v+s0U1Yr1WSDc73WZb/kUMp9ikzyTfb/tCRVwa2Tib/35AO5ly7J7pPmPPsE oYuqR2N/TYPfjlRVvPwvKjc0dTERPRA= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 2696CCE0ACA; Sat, 4 May 2024 15:34:03 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id F2CF9C072AA; Sat, 4 May 2024 15:34:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1714836842; bh=Tw298gqXSpUNqvTJkAVfkw6zpwke5iNqzYaHmcCtz/s=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Q8oKj1vuOdQlfRTomxMl8NGsRXqYO/Yop4wH6qOJ+VYQXhJj8oDV2Yd/oada14QOe Z0Bj4Rw/XlpEWO5oUJ4quoahtgdmSP3HgFBsAmdcfpqkzXvVUkp9wBmt/vJvzfFmeB MkbKMSmopKmujPR8NjtEqq5cFrhvzJClELB3a0PM= Date: Sat, 4 May 2024 17:33:59 +0200 From: Greg KH To: Christian Brauner Cc: Andrii Nakryiko , linux-fsdevel@vger.kernel.org, viro@zeniv.linux.org.uk, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH 0/5] ioctl()-based API to query VMAs from /proc//maps Message-ID: <2024050424-drift-evil-27de@gregkh> References: <20240504003006.3303334-1-andrii@kernel.org> <20240504-rasch-gekrochen-3d577084beda@brauner> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240504-rasch-gekrochen-3d577084beda@brauner> X-Rspamd-Queue-Id: 68C944001A X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: hodu7ixii9dbgzo69m3w4twtjjiajtcx X-HE-Tag: 1714836846-543638 X-HE-Meta: U2FsdGVkX19uCnq82Qnv9gKagt0aT9jl4oJ6L/RdQSc598LaOArDmKGDhLJUTsKW8PriernptY0V6Vxp/81NGwLGKNiw6byYyWNme2YfaFcYwQMRYMn99N8TVG0fQukrhJd0G6Hkxe57hNJpByeJRDaedAWip7TSN9RRhNbwgXb7MT3I508q/JDmpZZ6PsTFGgVMlhNowsri131MzbSSi3EQJfyDomSuxnu2XwInpdepaxou21ibmF4Sk/QvYWVGCHXlYxUh7YQtuXKlmWoNJMg9A8jCrUEhKP5NaSIYA7BmYKXIVHDBkC8AbSJB0JTj1/VfxbF3V3Qonel4yVl7BypTTX49TorNj4eLJcv4tKlRZ6WM+4j1Kv5m6/988O1X5n+lNFm0BQF3MV4caB2IUnp0BFfMzCvLfnU8uYXhulSI1NtyIr2zBp9XRLXeQC9apWUjVpKnux+Xoh1aHiYZ02Fbqm7q5qg2WAxcj793CV1eLUSUrsHLHXIi1MGJzMv1xFbtBqwu9VyAHSQ9aAkP3NJDwwRYQTEYBbVytjbzYUjylmvIupS8CQBr4sQm2qabcrxZVp94EPPyiFUJft71JIDVFCe1I6z05ctWH8i5ku17dxr3TzwPjZsUOypbBAFB6SCfuZ1u2ABxHOrRUaxknS7bXKwohdje9+tm0ojwa5z6RBqlz/43m/oN/GDmdja3BIGsH2ew85zRPsE8XvJb5dz8CIbgdgSQN/aSr26hrHjs2E0ohq54nbhNRG1xEmb3KN9x8jSZ8+p84+b6gkE1nhPvGa27PoxIQueE6ALgIdPjHMf/Ixe04qJWx8htyfuzfG/aPXzqBD/j8YfrCYsGAjSmw+B5KAbyQv9tbrAL8JqfQUQZbdP65GHbWoqgaqWvBmUl5XBmEidQoQ8CQpvVdDG1EIlyMLvuUjsj/3dDxw55jAv0tw3AS0tOKTZFFkmgsciRRYVJY/itWpmw/y9 Qcr4aleh Ls/DnsMtHMDsc6geNhVtmY5cMr3kRuAYfpn1U0h8gg6S2Cdf1NKg4ViQag93Eyy8d21VB3pLQmfq1wD3PYJowD8bf7jxmYMIkFSIucZooz0jWE2lOCdjOixIqLNwGcUU2ZuVIXy9iiZIWnsV4Ow6oLFGSX5WqZGAqWOZKCwvLfc9w14oRxj3myzkgBP0MjJLwj+R7x2zerrt2ChRnWONjxj9Iog== 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 Sat, May 04, 2024 at 01:24:23PM +0200, Christian Brauner wrote: > On Fri, May 03, 2024 at 05:30:01PM -0700, Andrii Nakryiko wrote: > > Implement binary ioctl()-based interface to /proc//maps file to allow > > applications to query VMA information more efficiently than through textual > > processing of /proc//maps contents. See patch #2 for the context, > > justification, and nuances of the API design. > > > > Patch #1 is a refactoring to keep VMA name logic determination in one place. > > Patch #2 is the meat of kernel-side API. > > Patch #3 just syncs UAPI header (linux/fs.h) into tools/include. > > Patch #4 adjusts BPF selftests logic that currently parses /proc//maps to > > optionally use this new ioctl()-based API, if supported. > > Patch #5 implements a simple C tool to demonstrate intended efficient use (for > > both textual and binary interfaces) and allows benchmarking them. Patch itself > > also has performance numbers of a test based on one of the medium-sized > > internal applications taken from production. > > I don't have anything against adding a binary interface for this. But > it's somewhat odd to do ioctls based on /proc files. I wonder if there > isn't a more suitable place for this. prctl()? New vmstat() system call > using a pidfd/pid as reference? ioctl() on fs/pidfs.c? See my objection to the ioctl api in the patch review itself. Also, as this is a new user/kernel api, it needs loads of documentation (there was none), and probably also cc: linux-api, right? thanks, greg k-h