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 8749BC61DA4 for ; Thu, 2 Feb 2023 14:47:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F03A26B0071; Thu, 2 Feb 2023 09:47:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id EB3D46B0073; Thu, 2 Feb 2023 09:47:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D7B556B0074; Thu, 2 Feb 2023 09:47:51 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id C95E16B0071 for ; Thu, 2 Feb 2023 09:47:51 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 974BD403AC for ; Thu, 2 Feb 2023 14:47:51 +0000 (UTC) X-FDA: 80422631142.06.B414D37 Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) by imf26.hostedemail.com (Postfix) with ESMTP id A544F140007 for ; Thu, 2 Feb 2023 14:47:49 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=CrNUnrXX; spf=pass (imf26.hostedemail.com: domain of olsajiri@gmail.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=olsajiri@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=1675349269; 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=1jg1FM+l1x90qZRI+1yXniygncn9Da3UxYbqywq4gpY=; b=zcsBMT+3GkBJyux54FRpPEkd1giKYaJzJ1CZAYKVMRv5ajoiI2PXUboBZywarfumv5LQgJ qH5e66F5q654myv4zxTp3NHLcivwD0wM1gb3myUt4eXbQ531FChPa0XGP4iLRoWHgZPVUf luDiRO35qhT0sEVUMRt8JPw0Kvj+dB8= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=CrNUnrXX; spf=pass (imf26.hostedemail.com: domain of olsajiri@gmail.com designates 209.85.221.47 as permitted sender) smtp.mailfrom=olsajiri@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1675349269; a=rsa-sha256; cv=none; b=rfXtuneUB/a+fzlnFQ9Wj6nwnO9SwsIjy7UyaPtyyrcmpdm4Yx5yXZ+HmCo5UZ8r2jr1ta Ja6BBVqMGK5mvQb6rDR64H/0A8C7EbhjQ4jd+RZplXs/LtcW/0WTXH6kC1Gf3/F49xq9Lw sPUKACNz31htFMt65uVClB5s9z4OJJU= Received: by mail-wr1-f47.google.com with SMTP id r2so1923326wrv.7 for ; Thu, 02 Feb 2023 06:47:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=1jg1FM+l1x90qZRI+1yXniygncn9Da3UxYbqywq4gpY=; b=CrNUnrXXJMEMMhrHPxmBs1XGQMa7YxqjqYblWbTA3uR3de2kBsyU9biCdNkh5y/ykW vuUWKJfKqc3D6zptmk1Jwi2DqdF/89tVGDYjhDcryv6+JrTDH+awQC5lsQGzkVFCM06/ kk3Dp33w8kpqYx7gXQz2LaMWTnWPPiRUKA8r7jtGY7OSRNCN2RM1UdfLv9eUDYgPpTAa 4i6fdtttpvw9JHfn8LBVSZnAuE80scqklJD80KF+mdfcGs/ugQVjrM2WF/kiO3UEuhC+ SvLb4EEX4KJH6P8RCSIVowFebZo3rNb5cUVc2K4KLxoL8v/8Vb89/1gLV+r5dPRKA77l AT3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=1jg1FM+l1x90qZRI+1yXniygncn9Da3UxYbqywq4gpY=; b=2ZfnL8hquuJxf4BgRVLynu9Qtu9G49RArC+kW5UNYFUgtwfuDGOqZRKbPqnsw48xyG MU9b3lRIH7weZdcPV3d3K2P0KIXokyY3G3/DCK99RU3apcOLkT808l9l290+nt+LP/vd UT9v0I7ZZDhMIznWopfOZ8HxMZ0wkVEeYDyQK2YnInpYtNgdze9WZuH3/muyliipMBBR MmHLAVjbVaANUU3/NJHaqGIUH7iZtwnE+ogfs+FncAcglj6VVYntLQem+0E2S2Wmn9i2 3Rs7PI8Mnw3dC9QEzBwUkhx216X8ey50ggDhSQRm+8JaQSG1PS89f6RbfwDpyetVg5P8 5TJQ== X-Gm-Message-State: AO0yUKWWlA4Xp3UGcQCZPESO6iClSN2Gim6LNijuqDqDOTkVEvvtwCSY ChI1j1UJlcAPIRp42ukGcpE= X-Google-Smtp-Source: AK7set8fehSj0T9hBTlYwSrsIkFREbiUWEWCpLMiuMMQpN0NTg6HQ0be2OEaDS5lWPFDeb+zfp56gQ== X-Received: by 2002:adf:ed07:0:b0:2bf:f029:8ac7 with SMTP id a7-20020adfed07000000b002bff0298ac7mr5559202wro.67.1675349267983; Thu, 02 Feb 2023 06:47:47 -0800 (PST) Received: from krava (2001-1ae9-1c2-4c00-726e-c10f-8833-ff22.ip6.tmcz.cz. [2001:1ae9:1c2:4c00:726e:c10f:8833:ff22]) by smtp.gmail.com with ESMTPSA id u15-20020a5d6daf000000b002bfe266d710sm1821764wrs.90.2023.02.02.06.47.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 02 Feb 2023 06:47:47 -0800 (PST) From: Jiri Olsa X-Google-Original-From: Jiri Olsa Date: Thu, 2 Feb 2023 15:47:45 +0100 To: Alexei Starovoitov Cc: Alexei Starovoitov , Andrii Nakryiko , Hao Luo , Andrew Morton , Alexander Viro , Peter Zijlstra , 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-Rspamd-Queue-Id: A544F140007 X-Stat-Signature: fqmx714ncxnxs11gddrryu7kpquiwsy9 X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1675349269-429320 X-HE-Meta: U2FsdGVkX18YKo3z4qD5lYEYL7gQs9dKe5f1Cwl9RvI1BtTa6db1pFZ07zb5dgxKgIYP89/wfFuQCS6gMvTn13EEvFZJPCVHa/W3RzFHApyv7wpz6cYlXgxyEAyBkKtzqFzOHCoDi9WGJIBnT4sZ0ug0xuUVu73+Ju4nEjIRpF2lnpCPU0VBbJBjomRSl0HQfJjH5HDZwQgxxA4n3c7Kuc8VedAj1FCmgx/veiXh3x2C3HTUdgtwJvRzSXFwPSvNnEo09DJ/itMmfauLBtdghxbfZ86LRGbQJVdk3NOReUIG74M/m4LLkBrda6wUsClfyUXsw+L27/ujtbOrqaS6G9HufKT/soUs/XVtaLkO4aI+Q/buAf0NDq2hRrn53oF7vCBe8Lka5weBYNzVtCB4o1GcUQd04km31eeRrufsvxAeJo9Vg5XZqOo92aOZ4eFlEU/SkEaRQs2Di1kajt/wcjzQAXDjLEr1j57nQwLxra5XQ3ONfvGyTo9lM7em1NVfLBbCRceD50sTgB/65HDmQdMAgwRZqG7JBeEfeOK4uPOXZsm4c8L9YQycu/jwkJiN80aLMArUwR4g1NL1TYzYXRFq6v2y4+LANzpP5AkgirxhqJCN5LL2Z+xUmr0P62GfNJzseQ7jhoMqwYq/no24z68j82ClpWU9bo15vBVDE4ILG0ZyqvYmuTchdcckRJhHLKC4QCHrvtqzE7PQRElsjREx6S0ke4StaB4Riqd5ZYsP6FucPaTm21ivrKXkVuAOQySBehlMGcx5YHwgQuCkzfQmZ2jtKSh3blKGFERI7EGgR8eqVv7VPR4TOqXI66XnFauQwy7Z1MD/PPGlDtUCsmz9ABatH9/x1IydbS246Gd+oiKHgNmJmC1x8hDxuMNPimnrlGUlIwMkP7sgU6CAWjKpKPH0ywfEW+xrF3kOUGsjcleU+P7j/eW4kVp3KQt1fzDJ1pZUxEt9RmAmczY zC1YyFNq hnIz92DEHsV8KowMfKAm/rzPgsQvR/+4gyta/PndBBJojxOf/tLox1s92YeC4io6yQd4R97RRATUWfGDc2HKGXfDoV/obbUucwZiUSV+8cF+Z85BPh4W1cSjN+V/0RwqYVPT0xFqSDylTgVcfrBEntH311DzffXB2MQS/mVE5ex3i++s+89UkGJcnG0tqhh95bcxTo4RZBTm5gmn5dlwO2nxSBd3R0/6wSXJV5m4dI7P+hbSydPnIokW+yvx9JsWTLPaX8Xbi8Chal++3ewBiEcr3Caiz+h1PWCX7GF21LMrwMqBbioIm2+MzoXEkusModS2BxkhwP+LicwtbbZv19LOna+io389Vx2Avu6xy30qS8Dus0fZxaZB5p8Y4el/pivmUTI+7FblAZ24IMiHifS1t7r2FdHGh6g3q7EMd5SBMdYwiVbaPVBBKrkQGHXe9yCNC+zsdVXL3SOgBuXSCnAWMnmgzQ678/2ecwvdFzCqIo/QUEnB9iJu6IZZBSFziZJcteCjS4ykcvA7e9Hdyz21wRY3OYxVQhvKbqwiOQdx0KhWgOG19a8494Q== 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. I thought file objects would be shared to some extend and we might save some memory keeping the build id objects there, but not sure it's really the case now.. will check, using vma might be also easier jirka