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 E9219C3DA4A for ; Mon, 29 Jul 2024 15:48:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6E4846B0085; Mon, 29 Jul 2024 11:48:34 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 694C26B0088; Mon, 29 Jul 2024 11:48:34 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 55B996B008A; Mon, 29 Jul 2024 11:48:34 -0400 (EDT) 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 397886B0085 for ; Mon, 29 Jul 2024 11:48:34 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id D76CF1C17F9 for ; Mon, 29 Jul 2024 15:48:33 +0000 (UTC) X-FDA: 82393222506.03.BE693AB Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) by imf23.hostedemail.com (Postfix) with ESMTP id 1086E140009 for ; Mon, 29 Jul 2024 15:48:30 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=4sagl2dw; spf=pass (imf23.hostedemail.com: domain of jannh@google.com designates 209.85.208.42 as permitted sender) smtp.mailfrom=jannh@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=1722268058; 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=JXhuRVtdMgKztBG06DUybwA27IR+VJWVhO/lY2CgOJc=; b=3F3l5kXVSyqYfM9YuNB6bN2EhD/iZ4X/DzrV0GVLsBpQKUpFck/BPTbDSfhmBPBx47Nxiv a9g+FZHKlUaLu4Dp2isaLwAK/zOApPuqBn4gWX82qarnZmPSFgX5Xscz4CIKsOfgHj9H2i Z4EFEQvyH8fJ5qYus/3KzqUKIadmXpM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1722268058; a=rsa-sha256; cv=none; b=Xl9eiaXYwh2lpaxn1wlIkgJ6W4b+BPsy3UFHNmriFD3GsI1uRjCfJtonZZ0FSbhUKdEPcL NTo6H1KJDTHr8i7DG/3bnvdIN2O/axE5UerAfDOy69MyewF2vLeTuvPCslMIDxUVEE2LS2 abiG/j1krxQJq/If/ljRFe/i3xcxNmY= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=4sagl2dw; spf=pass (imf23.hostedemail.com: domain of jannh@google.com designates 209.85.208.42 as permitted sender) smtp.mailfrom=jannh@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-ed1-f42.google.com with SMTP id 4fb4d7f45d1cf-5a28b61b880so15213a12.1 for ; Mon, 29 Jul 2024 08:48:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1722268109; x=1722872909; darn=kvack.org; 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=JXhuRVtdMgKztBG06DUybwA27IR+VJWVhO/lY2CgOJc=; b=4sagl2dwCyjoc9Jdu831V9+7z91bDBMvk0Tko8A0h7Wf6S2LrEzujfgB+zlMfqhXIR acn6pOYFtful3eH067KbVHiDvxUdTwqwmle2wD2h1Qnl23wmY5qs/22g6TzZi+rBbZRY BSeqNaliJd0wMU16op3JwqJr3HUR6pW3UMdjE2C1EXoHGivjCE9dPVVq9mZ1XY4IMllZ E9qT9uB4v24qKSKNRoiesf0dWKClyrm6a0N5T65Ya0M7fgoe6ujIfxMDgdaOlZq/AhIg It7Bab3PQBh1/QSNV4sxUKOEw0R228AudiupyxRXyn7oNpBnfdEmXIYL60X51090ZayA ff+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722268109; x=1722872909; 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=JXhuRVtdMgKztBG06DUybwA27IR+VJWVhO/lY2CgOJc=; b=Ps/3qe4rgXTDCGUWubbK722a85HBlSneRhdd6EscmpZDasXW/TaGr3y14SfYzuPiy/ RQ3ZEN5TabcULnZHol9zILP/vYTYwrik1Tip3AI2wahv3Z4SCY8mscgjG/Er+kUSYLpO hpv8IqXcGJHhJwFbuG10M5Iqc6vhSntfjcZ1a1DVEdvTNdEXmQsvBJjItFXP57m9R1wD vTZ/R1oHzkmoxEJvZkQbjOy0aSjpXS4ewfoZ9J+Tgc1y/RRfgjUzZAO8G+rvsmiWkuTY X5HmUQdbDAVr7SUzCKn27HhjEqkpQdQy8YPwzrhRbL6YrJXb2kwGeyQ6rBNqjSEkclRq Z5lw== X-Forwarded-Encrypted: i=1; AJvYcCW3bjxruenMnoXuJJrfbeCyoBi8S0LXWE6M6CHN2PrmDrY/ucyCDvEMywmo/WpVnnuFJ7TgUNJMZAFELaCztvitM88= X-Gm-Message-State: AOJu0YzTPyV/ZRu/GsClFhyQQXT6Mkz57oNatlAxq0gWK+Le8TT7V/lB KOP6Vl+Qz5ecjTdA0txkSIyQoeZrTmP0ZCOiLIBVQuOZJNdsuAuScJisSr3az118UwwTKweGvVV YjV+rSsdqUwg1H6Bu4iyIWSF9GvzDSBAZg2oX X-Google-Smtp-Source: AGHT+IH7QFyGS9sG4LuxOfocsqAqv82bMTA+QSn7azu9nOm+cFz5UNLcj0gpvytnicRkd122MuYcGBq2TC00htBHepI= X-Received: by 2002:a05:6402:350c:b0:5ac:4ce3:8f6a with SMTP id 4fb4d7f45d1cf-5b40d4a1985mr8515a12.6.1722268108796; Mon, 29 Jul 2024 08:48:28 -0700 (PDT) MIME-Version: 1.0 References: <20240627170900.1672542-1-andrii@kernel.org> <20240627170900.1672542-4-andrii@kernel.org> In-Reply-To: <20240627170900.1672542-4-andrii@kernel.org> From: Jann Horn Date: Mon, 29 Jul 2024 17:47:51 +0200 Message-ID: Subject: Re: [PATCH v6 3/6] fs/procfs: add build ID fetching to PROCMAP_QUERY API To: Andrii Nakryiko Cc: linux-fsdevel@vger.kernel.org, brauner@kernel.org, viro@zeniv.linux.org.uk, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org, gregkh@linuxfoundation.org, linux-mm@kvack.org, liam.howlett@oracle.com, surenb@google.com, rppt@kernel.org, adobriyan@gmail.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 1086E140009 X-Stat-Signature: tqzjfu6xa1897x5fdr5wgetf86die7gh X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1722268110-82760 X-HE-Meta: U2FsdGVkX19lR+ig9FGsAzbsGg/1/aUpnDzasY+9j3fKVGii+wGwHV5mudRvPEBiYSCEkMgCW5UkHZ5yjSrT6tmaeGx9PwZri4isVJYNDyNHbA1ZXGHh+NEMxbnVj7EiQeutj+vhC839gWiwXLWR8pHptknQl4GqnIumJZwGbgF0hNq1XGoVmavnE2hLsQ3XDSHLq6vs/4J0r5aeudktCXff46cMmBF8PXM13gTtjhFkr2bxWGhn4qFbr058T+6Jy6I9kSluctRZENj1Y8zXcWprWy2IWmj5pWw58JXrTd2ZOHBLIngG6aI6NBdMyOd/hhwN7nfFX35w/iGkvCalQhUU9EabvZMvcnA/FpU3zDzgdHKhQXhVEKW+XkJGzNIJHVJGSbATCRPQHlSevUwzu+W8Ki58JyhAJ/1wjuGaaNnfwFEznkGQ8UiOrFIdQTokzfIY5LnI52DM5ZN6uYkY90SxynWk6W7mK+lFGopz1bUqV/+Rfw+nO3L8ymvf7cGn0mHL82YjwEsK5TwhephEw4uYDBiT8Mg8ADn61TsNqFh2J8eojFZ6zNT++SZ8ku7pET/vP+qvDtKMXTFKayB9zUeEofL09AC2KJVbmM3qE2qegJglaX7Hcr+PqvqYLTZbQ+If8iyB5mOXHf35vnmow/hFchEUyy98mpBzSyBwGDjM1vbue4LGlsS8+iYbSTKMGDaJRUfrRPsgn8CQEC5rRxqKYizzrDvX5EXTUuhvgFDGN5d7hfCjPIMLIzvyOJQucTMVP4/UtoxImxo45qHuWKVfxsy1dGudKNNP2UyFtuchH2ElNOArC2hX9LsHRlG56c1VCGJDqT5mI+xxU2cjkqesHNDoProL3yev+zyD3gppaN5j7PY0vqDYK+Csu1PPj9D1fb00ggVDRqpQmg2rfQ9nbV/8fHyn1fseDEdrM7yiv7VvizaHEQOosz6AlThZ3UJL1MBRtTn5S8qA1Yv oKn/FUl9 OJwmcxpo7QKyWWUr46+2BR5grCevMj+5l6/dJeYkxg1uXhYDdprS7PHRakf4fI9rh0hkb0sF2oL/+ixlYoSmEL/wcCLxFQn+XQCsGWpFp9Ya/tNu2BCje168SZ2VxVdy6S6eF6GoKflU03NVo28GeyTVxm1GqPVh36lW14sf527Q3DDlsot0QujU18HBoSCU71cPrWy4a/0Q7rFeaNyX96u8EV7W8FVJ/fbdYqSviBZtTrXSEqN1PUMLl0K1neAPKuuqARJo+WRw9Pci4BA79TTaQ+g== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000237, 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 Thu, Jun 27, 2024 at 7:08=E2=80=AFPM Andrii Nakryiko = wrote: > The need to get ELF build ID reliably is an important aspect when > dealing with profiling and stack trace symbolization, and > /proc//maps textual representation doesn't help with this. [...] > @@ -539,6 +543,21 @@ static int do_procmap_query(struct proc_maps_private= *priv, void __user *uarg) > } > } > > + if (karg.build_id_size) { > + __u32 build_id_sz; > + > + err =3D build_id_parse(vma, build_id_buf, &build_id_sz); > + if (err) { > + karg.build_id_size =3D 0; > + } else { > + if (karg.build_id_size < build_id_sz) { > + err =3D -ENAMETOOLONG; > + goto out; > + } > + karg.build_id_size =3D build_id_sz; > + } > + } The diff doesn't have enough context lines to see it here, but the two closing curly braces above are another copy of exactly the same code block from the preceding patch. The current state in mainline looks like this, with two repetitions of exactly the same block: [...] karg.dev_minor =3D 0; karg.inode =3D 0; } if (karg.build_id_size) { __u32 build_id_sz; err =3D build_id_parse(vma, build_id_buf, &build_id_sz); if (err) { karg.build_id_size =3D 0; } else { if (karg.build_id_size < build_id_sz) { err =3D -ENAMETOOLONG; goto out; } karg.build_id_size =3D build_id_sz; } } if (karg.build_id_size) { __u32 build_id_sz; err =3D build_id_parse(vma, build_id_buf, &build_id_sz); if (err) { karg.build_id_size =3D 0; } else { if (karg.build_id_size < build_id_sz) { err =3D -ENAMETOOLONG; goto out; } karg.build_id_size =3D build_id_sz; } } if (karg.vma_name_size) { [...]