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 7629EEDE9A0 for ; Tue, 10 Sep 2024 16:06:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D0B358D0089; Tue, 10 Sep 2024 12:06:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CBBCA8D0002; Tue, 10 Sep 2024 12:06:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B83A38D0089; Tue, 10 Sep 2024 12:06:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 928028D0002 for ; Tue, 10 Sep 2024 12:06:55 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 161ABA0816 for ; Tue, 10 Sep 2024 16:06:55 +0000 (UTC) X-FDA: 82549307190.16.0E6BFCD Received: from mail-ed1-f46.google.com (mail-ed1-f46.google.com [209.85.208.46]) by imf14.hostedemail.com (Postfix) with ESMTP id 3569410000B for ; Tue, 10 Sep 2024 16:06:52 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="wO+/S39U"; spf=pass (imf14.hostedemail.com: domain of jannh@google.com designates 209.85.208.46 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=1725984385; 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=9Rp+ZaWePBqTv+7CDLYdQhLyxwC0Y6Goq+cudkph1u8=; b=Q95c2zLXmA4IFrf+00J8eyiV3ITo5vkkdmwLOrKKhQBkkLF+omdff7pk8pDr8s6Uh198R9 kN+lkWgfyfC6pLiI1l4sg6CTmPLwn/4pX6AC/PNX+1wossUZywL3IPrwu6uhoZkgTMsgrd SXcycpNKFKQR15I+oX9m/QPDOFaTDpI= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="wO+/S39U"; spf=pass (imf14.hostedemail.com: domain of jannh@google.com designates 209.85.208.46 as permitted sender) smtp.mailfrom=jannh@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725984385; a=rsa-sha256; cv=none; b=YdkewZ3chfNkhEgap92R3e5BUNufBI+jx4chovjqRWtOJ+hL39wmM2xZedzxchr+oPGT0g 0ZxSObHmfvv2K3UVrcGC+77SSwbkqEUl3SVqbe5iPjX38LrxR2xOVQQOr04WEQF72gv48x ZbffvkUQGHI2GE8qn6lkDKBeyfWT0W8= Received: by mail-ed1-f46.google.com with SMTP id 4fb4d7f45d1cf-5c2460e885dso23452a12.0 for ; Tue, 10 Sep 2024 09:06:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1725984412; x=1726589212; 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=9Rp+ZaWePBqTv+7CDLYdQhLyxwC0Y6Goq+cudkph1u8=; b=wO+/S39U5tjGyQDkpf4IG1td/uuhp9RVMutLb6H2Juth4HZAsbT3v/HEjwnEWiHNNr Z4ntbPjxLR/Gywon03H0ueVDWilftVDLM6mr1nGEsg+6jPmhh7w4nT5VECdRCfl9Pb8o 5y7qZgbw8naU5FqC0bhlZN2QVpF+BSYnCEKB7QgmNPDcwvynyhGyzzIV9EUfQm2UEPRd KK5gnakXObaJ7ZZp3xLuukRGe4DtReiP7BM4VL30ZUthjoRvIGc/Hbiv4PobY4pJJ+4r p7uNhtvdpjcSOMS/NM39ZeBWWz1tEipkYijNI41Jw8hEpiSCgO/1JR/bNBB6rAm5b93V M4lQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725984412; x=1726589212; 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=9Rp+ZaWePBqTv+7CDLYdQhLyxwC0Y6Goq+cudkph1u8=; b=iG2jfF/zw8FLrDp4DuiI4o+smfNo1z4cPCiOnHXEvOG4FL5mm6O90kmrU4sCUaGj3h 8KPxVBtKxeV6m/btQYknGUtIIVV3HTycti3cxJZa6LncLDmwTKMdVUybuvuUdAc5dI/K JvqdnyloYXBH+621fXUVISBpkkmfI8BsuBcdJ6H77+dVM20pdfiPICMEuMu5yo+Luu54 9FwxP7MSKE60fqeLU22oPZSj1jRDxhiwt111whHRXrkyorDemiA/GnDsa6KSLbmeCQ7V NnBJT4Kf4rwfuv2fVabrh1z7KXkm6ZmDw6emqbyGMXnsH6Omx8mM/SRVlRHr9QNm3tET T2+w== X-Forwarded-Encrypted: i=1; AJvYcCU4i7Wmr8rtsG4TwuiN5auWiDuMplfbod67fIipg3NSvRu3Rwae9JPeQWGGOeKaaHcSb4ePWEg2zQ==@kvack.org X-Gm-Message-State: AOJu0Yz5AYT+ptlEP+gzgJ4vUUb4MgdAGco1qusPMAUVyexh2V43yYmC 71HuEjXVNhVST4q6gCi1TNdVOFgFMydnhlvL/B52/V9wbblNFOmqhcJ/kGM9Nb0Ft8UAU7s+6mZ zyXJL9ch1ZbC+Yx1BnIicgPawlsHYipwQc1HI X-Google-Smtp-Source: AGHT+IHx0FXXNOSwDc/a2GkEEO0nN6J5e6WRL/WX5poMnRTVWbyacane/wtmnLr+FEV9BbUT65Gm5/vLnAoiz2/SvOA= X-Received: by 2002:a05:6402:1ec4:b0:59f:9f59:9b07 with SMTP id 4fb4d7f45d1cf-5c4029ef54amr299933a12.4.1725984410772; Tue, 10 Sep 2024 09:06:50 -0700 (PDT) MIME-Version: 1.0 References: <20240906051205.530219-1-andrii@kernel.org> In-Reply-To: <20240906051205.530219-1-andrii@kernel.org> From: Jann Horn Date: Tue, 10 Sep 2024 18:06:12 +0200 Message-ID: Subject: Re: [PATCH 0/2] uprobes,mm: speculative lockless VMA-to-uprobe lookup To: Andrii Nakryiko Cc: linux-trace-kernel@vger.kernel.org, peterz@infradead.org, oleg@redhat.com, rostedt@goodmis.org, mhiramat@kernel.org, bpf@vger.kernel.org, linux-kernel@vger.kernel.org, jolsa@kernel.org, paulmck@kernel.org, willy@infradead.org, surenb@google.com, akpm@linux-foundation.org, linux-mm@kvack.org, mjguzik@gmail.com, brauner@kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Stat-Signature: 1tpewoqw17w9no443bubsob6987p75k1 X-Rspamd-Queue-Id: 3569410000B X-Rspamd-Server: rspam11 X-HE-Tag: 1725984412-242758 X-HE-Meta: U2FsdGVkX1+v17AsEBWthJL3F+2SBSfj30YdxCNJqUxXp3tRAMs6atNZSiqnpJrlIYbS5pGQWW4QcSdJr03SpoAivIKeSHwKvzMgGF0X9svIQYh8VHLASo2uSwinYi1Cy0TlKP3ZInqg3iXXH3AVLl0GoR59V+ln+rLdKs+aaDVI4ZAWYt9w3KQPrvb+yJiuhkVWSqOQAmq96Dy/QEr2fuF1ZGLWrX1EWCky4detP4VPBMK8OnHw6Y0DW9HVJByZknutB56Zwlt7STNQejSbww4N1zXo0P34qaoGATXE5oS21gdd7TDkpHEDam2z5JUUohAk6iBCS2eLhTlLj0/SrDTXs8e2g2sCnJfWwChQNNEqmu2tiGzRDU473xy1AEQeV2assUrFCMYsYPijKTjSB0JXXiPz7ill6TGV8L5Bbg57+SaJE7C0N/U4kKAz3i4dEOrB0kEbaO5AcZHCZDcsC4OCnhMGsDMD1wq29/Zam22tLW2NtW7jFL5mpresjdDtfYvIRV93jn26Wo4QBl6bsn8LjUne9BWECnA0QV+1G73mOWp+KpbEY9jVSqsDd4rhvdZEh894dOW3+XMzRS0UTFw6U5U4GokvffXlpo3rBzD2tprj+RkTFMo653A0Wua4wLDzkQaqUb3aYqLJVXrI77Z0tuz0QSALG8/LYLhwiaZhX7YoYl67tMyJ/zX+f/kqrSpyTbRYNdu0U1GXi3/OygrNXLpktXZu7/Q/0eccjHcfVID9c7m0ZHrZejG9XZGZMR7ukoWhOoZCExNs7EBabbaIueMU7AnaveMBt2gzbuqyI9VrO7uFR28O89BtaniFY7l/9ae53B2fuPZ/q43xaS5lw2CkG9bZZKpMsrvdtmi2dXPhOLDPAV+z3lNgCsF7z+XhjjXFJ3iZjac+Z3H5cEpti5m6tEDmXg45/hKqgTMaBruYLboZjyxCvRp6yUGcJQdqmXYs6/GT0kWxZey 4YpGzOfe viwVivgEZXq8UhUrbadli5zunMwSHonJ5PdonwZpDBwlnZfpVfGWLhCb9bC1Tpjwrn/j6bUf5YhUr6kwU/ELmHmwu/oUdxn2UBt/UNqIword2aXRIqpnJgY4xz3YVCIAQQG+IaEOMe63pmiLnPpUaMNmDgWZOm+sKGwyMJA1XmZHCt64KmWAM8NM/X9wdWIOqUaFksDrRE6eG/3xX/oqzBSVLrpKwDM/zmlBv X-Bogosity: Ham, tests=bogofilter, spamicity=0.002619, 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 Fri, Sep 6, 2024 at 7:12=E2=80=AFAM Andrii Nakryiko = wrote: > Implement speculative (lockless) resolution of VMA to inode to uprobe, > bypassing the need to take mmap_lock for reads, if possible. Patch #1 by = Suren > adds mm_struct helpers that help detect whether mm_struct were changed, w= hich > is used by uprobe logic to validate that speculative results can be trust= ed > after all the lookup logic results in a valid uprobe instance. Random thought: It would be nice if you could skip the MM stuff entirely and instead go through the GUP-fast path, but I guess going from a uprobe-created anon page to the corresponding uprobe is hard... but maybe if you used the anon_vma pointer as a lookup key to find the uprobe, it could work? Though then you'd need hooks in the anon_vma code... maybe not such a great idea.