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 76960C7618A for ; Thu, 16 Mar 2023 21:52:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 077B7900003; Thu, 16 Mar 2023 17:52:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 02788900002; Thu, 16 Mar 2023 17:52:09 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E3199900003; Thu, 16 Mar 2023 17:52:09 -0400 (EDT) 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 D228E900002 for ; Thu, 16 Mar 2023 17:52:09 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 8B52E1C6F50 for ; Thu, 16 Mar 2023 21:52:09 +0000 (UTC) X-FDA: 80576109978.21.AABD3C8 Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) by imf07.hostedemail.com (Postfix) with ESMTP id B36374000E for ; Thu, 16 Mar 2023 21:52:06 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=PoXtj1HJ; spf=pass (imf07.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.208.42 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1679003526; 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=RtfiY/9Ts/lxuhuIdPnRLbTi5IvroJVQJHVG9Rqr+Bg=; b=u1KGT9C5hUgq4rkDyyRh/mWCrS2QxYd3JWYmq+s6JoNif6LVuW7LEm5U6Hu28QZXBNuio6 0q4TnbOmUxC5pMDiUd3AlYserrgJqrrXnPlht9j3wcbcNMFppr0W6yFo7/+sZaF5SZYcbh pZDk9n35P8OA4Pcsha1JAUakv60EpZ0= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=PoXtj1HJ; spf=pass (imf07.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.208.42 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1679003526; a=rsa-sha256; cv=none; b=2uEzktwxUi3T5vjmvKKBADEx45z5w8+iTxZ/kaVDj7k0Wbsrx5auG+g49mEHTxZCyd8vIy K1q86vvntXfr00cV6J8Lg3b7kRATEXzM3OhN9gg06hCq3SGqqmFO4fNZ+Cw0Y6Ve9OO84y jLUIfxsVdvcYmriECwyT/titLuCBslQ= Received: by mail-ed1-f42.google.com with SMTP id o12so13196151edb.9 for ; Thu, 16 Mar 2023 14:52:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1679003525; 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=RtfiY/9Ts/lxuhuIdPnRLbTi5IvroJVQJHVG9Rqr+Bg=; b=PoXtj1HJ3nrMs24bTw7Qvq7nChyhyYPmubiruUJPAEJ70lvXIjOlzac5InPDksRn7i g0aTSuSv2ZdeQDmUNfAP0ynTLMuNjgD5TA7t7p/zrq6jiiqjkLyrJed7r4QtZGCz773h mHmvNU3eDFVPpiqtKMb224poxmWOdQyoVTEFGcLtmv12HsHobRnt81GCeC1yOpu7LZ0O l9kQuz2RB5jFR3IrBjJIV1yYe86PeTOMu1ffEgQ7MQ+pjCE/3p1AqwQH8kWZDBMU6oQt 3kNadT6eMf3Q6rQWqZ5qnjyRNU77QxSgP1cdp/w0otNSQ4KFBfD3EQc45LstN16nNTka IaVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679003525; 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=RtfiY/9Ts/lxuhuIdPnRLbTi5IvroJVQJHVG9Rqr+Bg=; b=pbY/CfE79mjZQaJRnAmVvxvWzZufHZf/6tu81ej0i26DqSzcpFPduIUWDwSFayevv2 zJ56CPYx41AIYFt3DG7GyGnA6IW8GqmTspWit6os/mTdwIRjxsYuTtHtaaGgPWKZG6u0 mueBGYgqc3vZhIoN4v1YGIhZIIL75ZJ1KpuKXrk22X30XVWEVbZ2o1hwg9RJ3/HUBmJ3 PWS6J6ZRGcYc7veNj09sG1HJM4X+xpBOY6hCE5oEQSNjLLbVp8TyY2i4F7z6TF7Im80I BLyNGd4WNvqKxSMFkPEQmyJgO5sE5pgQdTFrM86UJ5IWU5SjIopl6cU/N5aul4XSrRQC nvaA== X-Gm-Message-State: AO0yUKWUlcBs5p3H102TDhMXXhsR+4XBfvPe6ESyVntfkwXEnXMNg79m iWjelgwoGjd65oOEoAvSKA4ShxsFW5fAz78Ruk8= X-Google-Smtp-Source: AK7set+JHSJCpQhlouI1fR8tmdBnrXTHcd+1Y5inVf/QAlkKqOBIrzQH16xoTjuF0I2vgt3/7fxuTJfLifCY5KSGxyY= X-Received: by 2002:a17:906:bc51:b0:923:6595:a81b with SMTP id s17-20020a170906bc5100b009236595a81bmr6185367ejv.5.1679003525011; Thu, 16 Mar 2023 14:52:05 -0700 (PDT) MIME-Version: 1.0 References: <20230316170149.4106586-1-jolsa@kernel.org> In-Reply-To: From: Andrii Nakryiko Date: Thu, 16 Mar 2023 14:51:52 -0700 Message-ID: Subject: Re: [PATCHv3 bpf-next 0/9] mm/bpf/perf: Store build id in file object To: Ian Rogers Cc: Matthew Wilcox , Jiri Olsa , Alexei Starovoitov , Andrii Nakryiko , Hao Luo , Andrew Morton , Alexander Viro , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , bpf@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-perf-users@vger.kernel.org, Martin KaFai Lau , Song Liu , Yonghong Song , John Fastabend , KP Singh , Stanislav Fomichev , Daniel Borkmann , Namhyung Kim , Dave Chinner Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: B36374000E X-Stat-Signature: 3hcedb6ywxweey5ryqd5mffjyqbxps3k X-Rspam-User: X-HE-Tag: 1679003526-684836 X-HE-Meta: U2FsdGVkX18KlFskYOrKBcTNtPVolmTSYpnYDSP15VOzWDzhFJPxBZ/kzYdbzdZra7mE15BODZjDMPhJwAmsa6l5Z3zSYfMbnec3Rhh08vWdch49TKKBPbnmlo7Ri6Wva8dQaSuI0P+6XItwruMAFkAEauO9j0g9kQc9TCHoWacLMSowbIqSIdolSBRblnTXDaQ8hYn2zqHF+2lPyhRuB6j1LBorKRER39Hy3yeJY+r1yds2SBxHqnkDBm3do3P3ek99A7MuJESOiNdDA9R+E6ST3fn90abmmVd6khk5iATQ0bP/VlzpS+kYW46L/AceR9vWpNFznSxMS0lBg62lYjeVFWLGX9SQF1oW0DsvkG0OcDsDHoX3QDaWRG4qb5/RwfRzQvPKCaqCwfcGxQo7+ApBd0vOfVlGPNknXxpGdgdy4Rl3rBay8kNYsr4AA7uBLpAL3RpogSOQ0ApM4W73lPBoGd8XTr9VqR4yODwSo1KanIj7IwyzEDBwkRwik68ua5fMU67i7knLSfSDAuz9dwb83bncfMa+Rt83OqiDHKzuOq/7l9ph+ow8IqkpyBIJY6RZD3wMFUBXQSj/Iaml7Cqaffpyxu0zW5onvCErZoAqJV284hUYcVcqmzMY707pV6i2hvv4hFxO+A6EkVLKf3AkT9EO/HhujOzWoXGqnM6XKk6EMaZ6/tvb4J+2tdgcOBNtnPeAiK/acj1leZzA4IUSFfp382FpTL/+XiUQbDhPTJf6lvoRc8v74gBOuc2Am981VItGtEh53rdFZZI+NPDqCjihMy4AXN2jgbkMoqE2olTOO2ZwCxBHhSwSL6B9y5tjXR0JZ0hYfhIs2X1JIGvDEHAZmMy+T679+RbZ0kq/wdm0Kgw+RO3u/JYYj9SsJokbW58LGDz5K335Wkl9znOknpops9RYXVCgzmH+jvZCDG3dSt6dhNV/FJt+KZ8KxteJ5Fmat/MzqkFiJUJ px9ptz7T 9IJAzA+1x9K7F9azmHOURR8ZCmDYe/f+noeq9XSFzD+c8bmkHM8bqUsYpC3CjfCNSCjdyxGOrAdM2U8HLBSOvlGGSR+piIxJ0hjHPAazzSiQ/oKeSoN1yX5p1CguVu3mjx3Qf7NlsMgf7aUDLydqfVsUKHCQD9h52meSKPXhRpT2x6fRGwNdChov3I08L99mA30VbYDfjSkGMikeHQIt07ZomDrFNr5Nyyyj6YzYPYs+C3GbmVJg7RWtq49vegPzKQXq4cfPRc3jE6Vaz5PAHh2zIVRlvgCfkLmDTyDbi9X7GSRTVp1MQCHTdNYm9bSMQEANnXzHoICI3hjeFqI7xEZ5jppjojk4Os1dH4dxqSkPMfEpOuEhgk1zzyZqU+XNSecyFcCaAuU5Nqq5sUpUdZP8cVKUYdkqTVNEVup0Ot22bNfrhtvqOc4AUqFEF7Xw3di+NOxM0RTrtoTyJ63nXSUNnDiZc4BJr2LSeGoJY7BRjxBr7nonmOtn9A3/JPlP8QbrrJJkhaFArflSPPKdhWJMU+uIUHcqs7jT77W/0ouaur5/UrxEUepZuAQ== 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, Mar 16, 2023 at 10:50=E2=80=AFAM Ian Rogers wr= ote: > > On Thu, Mar 16, 2023 at 10:35=E2=80=AFAM Matthew Wilcox wrote: > > > > On Thu, Mar 16, 2023 at 06:01:40PM +0100, Jiri Olsa wrote: > > > hi, > > > this patchset adds build id object pointer to struct file object. > > > > > > We have several use cases for build id to be used in BPF programs > > > [2][3]. > > > > Yes, you have use cases, but you never answered the question I asked: > > > > Is this going to be enabled by every distro kernel, or is it for specia= l > > use-cases where only people doing a very specialised thing who are > > willing to build their own kernels will use it? > > > > Saying "hubble/tetragon" doesn't answer that question. Maybe it does > > to you, but I have no idea what that software is. > > > > Put it another way: how does this make *MY* life better? Literally me. > > How will it affect my life? > > So at Google we use build IDs for all profiling, I believe Meta is the > same but obviously I can't speak for them. For BPF program stack Yep, Meta is also capturing stack traces with build ID as well, if possible. Build IDs help with profiling short-lived processes which exit before the profiling session is done and user-space tooling is able to collect /proc//maps contents (which is what Ian is referring to here). But also build ID allows to offload more of the expensive stack symbolization process (converting raw memory addresses into human readable function+offset+file path+line numbers information) to dedicated remote servers, by allowing to cache and reuse preprocessed DWARF/ELF information based on build ID. I believe perf tool is also using build ID, so any tool relying on perf capturing full and complete profiling data for system-wide performance analysis would benefit as well. Generally speaking, there is a whole ecosystem built on top of assumption that binaries have build ID and profiling tooling is able to provide more value if those build IDs are more reliably collected. Which ultimately benefits the entire open-source ecosystem by allowing people to spot issues (not necessarily just performance, it could be correctness issues as well) more reliably, fix them, and benefit every user. > traces, using build ID + offset stack traces is preferable to perf's > whole system synthesis of mmap events based on data held in > /proc/pid/maps. Individual stack traces are larger, but you avoid the > ever growing problem of coming up with some initial virtual memory > state that will allow you to identify samples. > > This doesn't answer the question about how this will help you, but I > expect over time you will see scalability issues and also want to use > tools assuming build IDs are present and cheap to access. > > Thanks, > Ian