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 63F6BC3DA7F for ; Thu, 15 Aug 2024 19:07:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B3FB46B0195; Thu, 15 Aug 2024 15:07:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AEFE96B0199; Thu, 15 Aug 2024 15:07:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9B7806B019C; Thu, 15 Aug 2024 15:07:42 -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 7D4106B0195 for ; Thu, 15 Aug 2024 15:07:42 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id D79D01A17DF for ; Thu, 15 Aug 2024 19:07:41 +0000 (UTC) X-FDA: 82455413922.26.8257260 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) by imf09.hostedemail.com (Postfix) with ESMTP id F2564140029 for ; Thu, 15 Aug 2024 19:07:39 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=EWYP6zQz; spf=pass (imf09.hostedemail.com: domain of mjguzik@gmail.com designates 209.85.218.43 as permitted sender) smtp.mailfrom=mjguzik@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=1723748786; 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=Yc7jnolC6CalfMQx2EFCDRpHzxfWieMgqorOb9kmQWQ=; b=nsNBNU6ifJaJOxopQoc6rlGcxnlkdbxW/ZG4T8qgLc6OV5m+eGVw+iLZGBA8tSIvoEausq PZyE4pJq7W3AQOys/G5XfHYJBGbK5zkObWjKLRdEG8YJBgvBycmV5Nki6Aeao2H05ROWUK aucV6V552jsl9Be0w1RTXo3BLKYsxDo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723748786; a=rsa-sha256; cv=none; b=qlaE4Suq1a4QROS1MVyM2wD7cbnaaLMLm9FcszzM1NEzqQ1TTiSEd4+GW/9axtrpkjgkTQ Q3cMx3YsbE/vZTJA+eyso3T9hJgnsA0zK7w6MtKQkdGpv+CFKFtXtNsGLn3pSttYHJFDhF EWlM9OvQjGAVfsV19doKLqVUKh4Abms= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=EWYP6zQz; spf=pass (imf09.hostedemail.com: domain of mjguzik@gmail.com designates 209.85.218.43 as permitted sender) smtp.mailfrom=mjguzik@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-a7d26c2297eso154509066b.2 for ; Thu, 15 Aug 2024 12:07:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723748858; x=1724353658; 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=Yc7jnolC6CalfMQx2EFCDRpHzxfWieMgqorOb9kmQWQ=; b=EWYP6zQzumnGgIvg4LlAJH87Nf6TELkmxh00X9ZhKmDwsIjLpJNk+7Yp55yAL31yYU ICMAnw3zE56Ti8ZHjMMqXgzc//e0mJ5HR0aqLwSZiy7GE/Yd4VKCrPGAsBgg9yuc08f0 NLbuP5f02M2xPqs1u1BEkCpGsnTqHXC7qQ4kqBAHQEmbzu2m/UBMePt2lVOD2JEt3Kaq B7nhw0Ax281cv4HRuIq0b36fMpelxvBsbpwecwws9G4ypyj4IUNKT6PfDlqEkHOVOGx3 MhUJO6A7m8yzu9oloGxBlNw+3w6bcRbiMSjuuEMBPYqhXxrKAlGs/KVBY/U9q41EYXrV 27XQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723748858; x=1724353658; 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=Yc7jnolC6CalfMQx2EFCDRpHzxfWieMgqorOb9kmQWQ=; b=umgNpGLlGk7HXpoVbZS5qbn5UKofjfGQ96xCEffhr2LaAAU9Wb0DWu8BX14w322Lr3 RQ3EIoO+CjD9kygt/1wa/YIvq01znfBvrxnEmybzy9J6xL5LOYNiEwrlptRoUfsJ8VzM BUiGJ2gIlooqkyV0mpvAI+Iyz17I5sRgrsGk3Hp11Tp0q6TmtHD1wT9v4HwdFLYfRceH fav/FZ/zDSvUMGJ7IHW3ZsUGBxsinXfE56BaA38osa4f7ghkhR3T5x6jSof1a4khJKFv onFcn+nTLowNMtKr5KHftd9WMCeKQhCUOYrfu+6sBztvu6h6FzrQP/ARkTYrU8fHCNB2 z6Hg== X-Forwarded-Encrypted: i=1; AJvYcCW/+u/98/ViI8YpvbWV5hMOOUPuELvDhXVTR65v2Xpj7PwAr2Fg7Q0bCLl9YD8WHH3kMZVUUPZv7Jf3z03NdvkNKqY= X-Gm-Message-State: AOJu0YwLA58PJ7Y4JH5m3MV7YmLmz1ukvqfjv3RCy5nNSX7ClBLwYcOR 4j8/OENQWwJwRTHP50IGwoqA8s6Oat9RP0odNn157UuU+TAyNu3DM6C9bIynFVo8Jsi9FMITfXT PxNcU62CIFkbnlJvvK1OVn4o/FZU= X-Google-Smtp-Source: AGHT+IH4SMSBfHTMulRiORRB1NruG1pcreXQqKgKEcXW428mFt0Q5m23XCgcf7kpgicWS8rViGurds0qeUkHj9zorB4= X-Received: by 2002:a17:907:e266:b0:a7d:c46b:2241 with SMTP id a640c23a62f3a-a8392950874mr40645166b.29.1723748858241; Thu, 15 Aug 2024 12:07:38 -0700 (PDT) MIME-Version: 1.0 References: <20240813042917.506057-1-andrii@kernel.org> <20240813042917.506057-14-andrii@kernel.org> <7byqni7pmnufzjj73eqee2hvpk47tzgwot32gez3lb2u5lucs2@5m7dvjrvtmv2> In-Reply-To: From: Mateusz Guzik Date: Thu, 15 Aug 2024 21:07:26 +0200 Message-ID: Subject: Re: [PATCH RFC v3 13/13] uprobes: add speculative lockless VMA to inode resolution To: Jann Horn Cc: Suren Baghdasaryan , Christian Brauner , Andrii Nakryiko , Andrii Nakryiko , 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, akpm@linux-foundation.org, linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: F2564140029 X-Stat-Signature: gaqyger6c3yiguf3qyxgjwpfoh73ac8y X-HE-Tag: 1723748859-48124 X-HE-Meta: U2FsdGVkX19CXaivq4Hg5bRYH2icIrjATURjFwOJGE3QD3gfuubzrR1AmP4s5/z/xid0SMuuDap1Mz1GXMB7IW/v1WZwF1GIP+vMcPgKjY+MQ/99EI7QjiXMfjADeBwN0zaeuQ2G0uqCOHEVcu+2N0ZH4E5XiHTGiJ9wr1Ob/gbs3OgZKTo3X68vzWi29Q6o+LdER6iGvm4q96zoAvPYIjffOfrNel5F4oLdAU/ZZ+a653K3A+l2FgrGl/nwp4Q3F4tuIlmn17A0IkZb/LwrbcCO2JBqkk0Uii+4suYVDKzWH+lpU909mw5CuIlyUG9p6U9K25SHpiO7HDidTXPlnPX29fh54va8IoP82uiLToOHJRuYrxckD/2JaIqBPwgKY4sk2KwwmaDFEOFKdqUMtYtTxCQrmdNr/AVZ0XVYQZhie3NB9JrBDOS2G3PshBlMOXFViTe/BPb0oY8qFBC36W8i7kERXjMlM5Y970MSC8srw46Oe3nsqTADsbOcT/928VvsbBM1/127KiaLFbC1VHAbgGVXjNwB1q6h2MH5MvTivHBMAR9FQnEZ2IPpASMk96KgzV6tp9D4mcaTReU4QdZSDxGqtFrS8EBTrHGr7PFDC9Ju39d4yYTWwAzf6JYG0+sjk5aYLy4iE1Q5lkeEZQrefnD4k/zfc17fJLM8e3V9TAqJztbhhPmnJq9lFVanQ9wqnooJ6zcn6gqbLPPf/SemCrbKJUIG5oJO7Xu8Hy32BfGUku3Mgn5zB/vGv6XFWaojSQwjtjXTx6MJ0LfcZUiNQDVjpImslkJQMCgJ6nsBn6RFqf1ylg7Ejee8Dx0xah1QutMF5LbAYY4oUITIFuIGBfz4rNo3+jyMLc1mVPuarrbLtlnjBK2sJClpmhNIKhHSxLAtyaGB5WtdFrpz1j9YFoM8TXk0TX3iy9DoETTf8gvMOgyrBPQkQJggIsdtm0Y5Tp3Z91/hHt8j5Gl Y/sWLK9W EfwObMc76jiyANf00/6vlxaSyK2uFJ0VxTdepvTPkiH8UR7JWDJ4ALeRvDyZz7CM6HdK/mNMDasxhQ5d9gREctnJlF1bkm1PcAEJ3Q6R+cBFCBgLz24NoFlYKBA/LpMgZHJra7Aj827XlxdQ1T6GFJZLCq4oT6S6E8O2Vq8Zfd3QSP5CCKf4bDAqHGu1FVh1F+TQEkZNYulf+I1o52AgKB97CNkVPDkKwu5BUrKIDBEUeTBKS+1AUtZpFOH/cmBU3FF0Eg6LnKvsZG6/8d6mKpIYE5M0ejv8LIN7zmKWqvpCd6TJGLyNCWzov3cwCQj/0wL38fb/Hvck9rPvA84vpSS4TJhz6HuoyKPgMJqqyy5LblZ2ojNOPV73My6zghWXbo21t1viVhpxR40HRCyel+DmQfG+srrt2f5XH 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: List-Subscribe: List-Unsubscribe: On Thu, Aug 15, 2024 at 8:58=E2=80=AFPM Jann Horn wrote: > Stupid question: Is this uprobe stuff actually such a hot codepath > that it makes sense to optimize it to be faster than the page fault > path? > That's what I implicitly asked, hoping a down_read on vma would do it, but Andrii claims multiple parallel lookups on the same vma are a problem. Even so, I suspect something *simple* is doable here which avoids any writes to vmas and does not need the mm-wide sequence counter. It may be requirements are lax enough that merely observing some state is the same before and after uprobe lookup will be sufficient, or maybe some other hackery is viable without messing with fences in vma_start_write. --=20 Mateusz Guzik