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 3AAA5C636CC for ; Fri, 3 Feb 2023 10:03:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B60806B0072; Fri, 3 Feb 2023 05:03:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B0FB56B0073; Fri, 3 Feb 2023 05:03:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9D7BF6B0074; Fri, 3 Feb 2023 05:03:51 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 8AF286B0072 for ; Fri, 3 Feb 2023 05:03:51 -0500 (EST) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 5D6DFC10D0 for ; Fri, 3 Feb 2023 10:03:49 +0000 (UTC) X-FDA: 80425544178.27.C02A6C4 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf15.hostedemail.com (Postfix) with ESMTP id 1C2D6A0006 for ; Fri, 3 Feb 2023 10:03:46 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=RjeqYQeu; spf=none (imf15.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=peterz@infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1675418627; 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=YH/8ltZNkKStUJrvFHYeArjsVizSPTMYIhZUjUhNtIY=; b=IkePCGdaeCcHIwHtsYTlWzDrHg9tZRF1vJZWaDSOZmiowJfpquD0HhQyy55QSVgfds5iGn 3VwjzCcWwcHKb/pTMRcMD1xiV0G7q5yJ3pw3N0LRNDy+qx695GCUHz+F8eeEOE42pDx4Eq lCEEnHLqX1q76OWUHqY1UdwihAj1ZlI= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=infradead.org header.s=casper.20170209 header.b=RjeqYQeu; spf=none (imf15.hostedemail.com: domain of peterz@infradead.org has no SPF policy when checking 90.155.50.34) smtp.mailfrom=peterz@infradead.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1675418627; a=rsa-sha256; cv=none; b=SosIVJCRDjRCbrJ2LZKsMke1sF3PlXTqOpe+QYl5CopciSjpj+j3HGcC6UkZdBJak/qmuR ZHa8FVhnsH1XKlic4huhgOppBAMP782aPLkVTlL+C8hyO2YC3L+XkG2OMeII/P/BH6t8x9 DJdW6/7iIitkUo8AhzG0U8no4zd+ekA= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=YH/8ltZNkKStUJrvFHYeArjsVizSPTMYIhZUjUhNtIY=; b=RjeqYQeuDIs31bqFuDOVNCpJXy SpNnas9yZLnzPYarE3/z3e3WDDvHc3fZjPegGCVejqoPSEvAdO6tM9i+qeJPWqxks6FUe+3fVl7f4 eQn3pkY4Hh65yDr6yK2jG++5WK86Yz5gf2vwUdjDJqSDfJcZlR5hgRa1Lx+f0v4rDPE8aCc090skS zbesIES7PWXubGSCZbntIyLgwn0pRnbuFjGeEws9uXjnYe2Glq+Wjoolll9ad525ijsVTVxSPnulC x2FY8YQQ08BQCGSwlC+xkiJP1OsnN5Jg+7so+8vNHwar2Tv8+QOkJJYhhsI6ETPcb+76oWBMHfGaq 9N2l/kgQ==; Received: from j130084.upc-j.chello.nl ([24.132.130.84] helo=noisy.programming.kicks-ass.net) by casper.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1pNsuh-00EDRc-Qr; Fri, 03 Feb 2023 10:03:24 +0000 Received: from hirez.programming.kicks-ass.net (hirez.programming.kicks-ass.net [192.168.1.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) by noisy.programming.kicks-ass.net (Postfix) with ESMTPS id E2ED5300129; Fri, 3 Feb 2023 11:03:21 +0100 (CET) Received: by hirez.programming.kicks-ass.net (Postfix, from userid 1000) id 794802136B38A; Fri, 3 Feb 2023 11:03:21 +0100 (CET) Date: Fri, 3 Feb 2023 11:03:21 +0100 From: Peter Zijlstra To: Alexei Starovoitov Cc: Jiri Olsa , Alexei Starovoitov , Andrii Nakryiko , Hao Luo , Andrew Morton , Alexander Viro , Ingo Molnar , Arnaldo Carvalho de Melo , bpf , linux-mm , LKML , Linux-Fsdevel , "linux-perf-use." , Martin KaFai Lau , Song Liu , Yonghong Song , John Fastabend , KP Singh , Stanislav Fomichev , Daniel Borkmann Subject: Re: [RFC 0/5] mm/bpf/perf: Store build id in file object Message-ID: References: <20230201135737.800527-1-jolsa@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 1C2D6A0006 X-Stat-Signature: 9pkdcmxc3949jzpzes1esgkai6r5fjma X-HE-Tag: 1675418626-940084 X-HE-Meta: U2FsdGVkX184f+tLzxasggXJe+hvec/ZVbZWRHqJg1XozeA//o/znMFJf21phV+g7Zrbc1kbbulnj0efs0RWrAVmDcqBfYLzRgfsO57wSqHcYcAvJT7VyhxUrqG+JKvd0xkSXuLvEVOaqTalJEHo+Te7R/z1DSxvJij3a0pad+ZyDf/SMdJBfOt326KU5IU9TmDv08YEXxFEw6JY0ns/8Mc2CWMex7k/1wh3HdUlqM2n8XlsIrrS9skHO2n2mluAWCBAMNPkl16DRZvUo7QKtAS59VFBDOYiVt6rkVSixdVQ2lqOyqY96Vl4jrANHvSJALfTpioc/Lu0/QPC/Z0RhzWk7/j6YpBRLRGakokNjIxY4ObbQYWpG8tIS/E7a6GzzohELEojEF2yhrBFULZAoJwRMaDzfR+3mau8a+B/TckD6d0ktOMmeRzn4VuGkY53NlMMF8Odcw0OC0i29wM2LyBetd9v/5/l35QibxElCE/QxJDQVMuQIcTLhpCK1KFmrVFrhz6hAIYGvU+LZsc9nEX1WavRHaLbYDruVyoKp2r4gtRtFXzYROhHAojuX+kww0xeW6g+q6Ub78HEbkGBq3YipH+Ci/QhhnRMzzGGwIBm9esarqs8UOuheRv1oD69e2ixqzo3NxhK5lUe4AWuwUIwvfhVnsgy/UMqJ7hE9i67O8UFqWaRlvIa5Fr9YXMlpK4KtznkNaTwknZ7LEtfqvl1c2g5N2rC+Qmg9u/15o0fV+BFtJ58q8MIZWabzPDlltUInpPxrAY3XKltVMhw6XNT5Y5r5GmsMAqCFyjTS9otJaPO/QzigId4o9+yrP2sZyYVQbLonPgFbg3pmU9hhnwKL5dk0Kf3URgpT/nfsc6ch3fOyIjxhSXJdgKghPT3iWZay8IFjWo8F15DE6jvoNr3OwJg2trpgnuXZJ1wQhbDYe2t05664/HEnu7MUhahzkMUFzBLDA6PCheOLk3 m7Hb/cqQ XGH3/pooG4jWbabYoW471vNsCLrzVVFxBG/nt7YCb1WzJvn3SPvgQmFFtK7lWqHOoYNj9D4vNemMwvITOO4KsyKx0E8DKw1ZTwbLY+lDRkXD3GNx0VhkyKcWaoVkrmO3QHQlxdUuldVoVqs/N7Md9b++ET3gIHONtq2WV9jkb4ok+ooH0ecSBKuVDdwgwgCBnfRhLOVG4gnku2rnoUtEcYjgqREnNJwGomzNQKEOVPq8dBCEdfEyOXUPgBdZR6TvVmaUgy9oD1zE/b4IXe6yDy7Zp9Q== 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: On Thu, Feb 02, 2023 at 03:15:39AM -0800, Alexei Starovoitov wrote: > On Wed, Feb 1, 2023 at 5:57 AM Jiri Olsa wrote: > > > > hi, > > we have a use cases for bpf programs to use binary file's build id. > > > > After some attempts to add helpers/kfuncs [1] [2] Andrii had an idea [3] > > to store build id directly in the file object. That would solve our use > > case and might be beneficial for other profiling/tracing use cases with > > bpf programs. > > > > This RFC patchset adds new config CONFIG_FILE_BUILD_ID option, which adds > > build id object pointer to the file object when enabled. The build id is > > read/populated when the file is mmap-ed. > > > > I also added bpf and perf changes that would benefit from this. > > > > I'm not sure what's the policy on adding stuff to file object, so apologies > > if that's out of line. I'm open to any feedback or suggestions if there's > > better place or way to do this. > > struct file represents all files while build_id is for executables only, > and not all executables, but those currently running, so > I think it's cleaner to put it into vm_area_struct. There can be many vm_area_structs per file, and like for struct file, there's vm_area_structs for non-executable ranges too. Given there's only one buildid per file, struct file seems most appropriate to me.