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 4AF77C35FF2 for ; Tue, 17 Sep 2024 08:20:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 71CC46B0088; Tue, 17 Sep 2024 04:20:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6CC746B0089; Tue, 17 Sep 2024 04:20:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 594086B008A; Tue, 17 Sep 2024 04:20:02 -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 3C9776B0088 for ; Tue, 17 Sep 2024 04:20:02 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id CEB87801EE for ; Tue, 17 Sep 2024 08:20:01 +0000 (UTC) X-FDA: 82573532202.19.D4BAF35 Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) by imf17.hostedemail.com (Postfix) with ESMTP id F07184000C for ; Tue, 17 Sep 2024 08:19:59 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=hG98j4Ir; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf17.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.49 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1726561110; a=rsa-sha256; cv=none; b=nuVKMwAqpnk6MBvjM2nP1T59FHFr9SMbxCVppE+ppytPL1lFW3ipDwLxt2/ABfgrO+eHFh GgH0mv1+gKEIb7oUgjfXlWQ6/xvCEhTgcjZfLs4ImZ2VMxkQ3DhM0P2RzfUYE1a7cqVEPt j5LagLsHMxof9nuvXFHsx3DRrDk6kLw= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=hG98j4Ir; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf17.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.49 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1726561110; 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=62qrnE8pj3OOeoUczDjNWSRiDCBubxYi7zDU0C08Cg0=; b=xyEaRGMCth33aJUZ2ewPRkRXeEOjBwFrhfR3GHcqvA88gKXhD/1J3Owb3zcX/9cSZuUm7X wb5gVhq042a6x7wNXrFq6AhDYBncH8HWZ9Q4WI5cxVpljUq/qNV3sqHUZIkIKeOm4fhvOt cPXnTmiKuliJCA1+9b4DRzP7yr4/pqI= Received: by mail-pj1-f49.google.com with SMTP id 98e67ed59e1d1-2d8b679d7f2so4339456a91.1 for ; Tue, 17 Sep 2024 01:19:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726561198; x=1727165998; 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=62qrnE8pj3OOeoUczDjNWSRiDCBubxYi7zDU0C08Cg0=; b=hG98j4IrFsX6NQD9T9gdx3NA47twhrktslquI66hfiE6vyxofrkIlz31cODoxt7pTu Y2HZZA5T5BtTXXJWtnCKO87/U33mIQAUZ0GlM8Ts0QuMqTXJ4/FoxKST6U6py+xOdt0j 7P9Oyd/PRm6OWEoyTC10kuIjiATKK/QzVnU5iwJnYXBEV4WI/JaU1U81uhfu/srSV5yo 5hC8RUvja6DAv1xXhgTfs2QSv6PBu9rf/YxllT7ImFr+8iHLWPgvZocpThoey1mh9XW5 hTVcXFxhUNHAWdxGNCefGXiFZ1HpZabmgiNz5FsjwSh1zJpBKkV8vvq2qcArWMPHrQ5i UZHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726561198; x=1727165998; 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=62qrnE8pj3OOeoUczDjNWSRiDCBubxYi7zDU0C08Cg0=; b=iuN/pwHMHa2PIm3BvmxscE4BXWJ9+v8cpPyEUe1Y4ijWOchWYe+B5foa1xYa6qFyYn KK0cysOXXPhaqvH0hqgapy01izzjLRAPX4By+yn91Nx6ZR1qsqigjDBki8MU7yOzky/u EB5n6U4BOzDKsjR3iRDMkHci9Ej81Wts1zj7GXUfVWW6I9llaemnP/+PwHllmouhgVL2 dQ8yGctV7pTS+ZKjPwxVOhNV8jbzhpXR9bYPlZlchN7zAxsnf20fcOSlSo2Lt6f/Kj5E rKP+09aS93ZT/PoL3mxzoFr3Bd7B7ZeuvbMBFADjXpKpfV6SXDhywtbubPTOzPKkqWab +54w== X-Forwarded-Encrypted: i=1; AJvYcCUhik/94cZn44Wf2cNEO75BhXmH8edJrzJVHtQb2tOe3VGi1V5S2G8uy2kNrncIwUUF+1lm2sS/1g==@kvack.org X-Gm-Message-State: AOJu0YzPhJbO0bR3pbqzb/i/Q6hX8IJkATJ8XeNjDboXFmDPgExEbxeC buSHUOCOfcDYxL5OyYoCxUttQhvPcsglvZz9QEi78MsMgoe+fKj65BuMO9OAyK8/5WhBmwXBpec UjlqJnCcOmE/uI3mQUITM9hLEWms= X-Google-Smtp-Source: AGHT+IEVhLBhSwOagybbRN8ICxXcGMdAre6M3HGdAN72GMKM5GOvHwwmEwDp7gSujPDbqMOawEJTvsQ9t/TNupuNMxU= X-Received: by 2002:a17:90a:ce01:b0:2cf:fe5d:ea12 with SMTP id 98e67ed59e1d1-2db9ffb8564mr22352587a91.24.1726561198561; Tue, 17 Sep 2024 01:19:58 -0700 (PDT) MIME-Version: 1.0 References: <20240906051205.530219-1-andrii@kernel.org> <20240906051205.530219-3-andrii@kernel.org> <20240915150429.GC27726@redhat.com> In-Reply-To: <20240915150429.GC27726@redhat.com> From: Andrii Nakryiko Date: Tue, 17 Sep 2024 10:19:45 +0200 Message-ID: Subject: Re: [PATCH 2/2] uprobes: add speculative lockless VMA-to-inode-to-uprobe resolution To: Oleg Nesterov Cc: Andrii Nakryiko , linux-trace-kernel@vger.kernel.org, peterz@infradead.org, 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, jannh@google.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: F07184000C X-Stat-Signature: tckejx165jkd4f3ag5384z8u6xehqhho X-Rspam-User: X-HE-Tag: 1726561199-100626 X-HE-Meta: U2FsdGVkX1+NEe2xTNYl3Fv/0QuW5mNm+Vm9F/vDWvo12AqdJdZ2Wyi7cD/6SDMQdZ4CnkTmEGC9RglNigPd6OqbBgdx4/0w3N/+gd7MfG7KMPqQx7LA7ZU3YUMaDv5q+UyeztDLjGvxmIWwch3ko6T+aBiSbTJhWpAW6yJREAKd2r7fOIvrIEwSJ6GoxuScW/i+qC/KUroBZhIQNzzDZHYDniWL0pmfKc2KP1c6IekpdPa4qnEUUpH5xTq41H5JvOmhKEQTL+orj7HDOgDRpKuL3HOoQ2OPFpqRDKuZde0W4r441zXtKjf/cpCsJBtcC3HnNx/vleE8Phbqw5yvGfco8lnPdKVpA3mz7ZZqwhXBEriNLkPNcgCRnfwq6mDWEYR9Mp1RYGiP6AtXOhku6RWqWKY5/Seb+n1XH753ufQrm3kmKKVwCa9OXOiWMea0P7+0Vofvs2k+NazSVyx90wF7Y+mgTzhWz2PDgL5hzFBGYMCmef0CtudD1bxhb2kFna1aTzdx/bw25Mq+xUcRF2TmVHJhgpyZSwC4Z8o9hbE8sgRVxO3EnzrFxrUb6nvqZ78Z4dzvmaLCKrJOY8O6E7l/BvL3di/5aqdP0I02e5rUxvp5rdHWuAo6JbVwA7YZ267XAUZjWNYhMuG83jSEBoaN7DJrSwaTjG54vHFmvxbG3PNiVpIWnDhQxl2GC6VLOgeCp+x9oQhYzOhoUZ2S7lVIfjQfigLU+7yG33XvlsCufpI6pN2VAftBT8oGabpd9/tQmGkIp3ZjcM8i0dgVJ+eDvbNHBRtg3At9+3x0oT8wymrqvT4B4sXMUMnIPNEdONtpW6bh6PqlqdBWIhdnU7P9KdfV2CjPXwsZQp3cojbAQhLKuHRzbajB612heZwfiksTx8Szpbqece6uHCKfvc54xg8p3kFTzRj2ckyVzfb86UrrdDeL0xNY0lqoesE97N6Io8fId5jjrAzLkb7 tq01BpXC m6G9YbYSiBBDXk3Aj38chr/CAXHefKpCBps8NkxO6Sffamy1u4Zy27bwnAnfJreEvYQrEcmJvwvViVFcetFIJTD5EwpmdtUvd11RE3tXlGAphkqbqWgmhx5neb9+f5JtHXxBv+fcD4RsmCMYY3sO/7yx4UgsYncafGGOqJTsxaGrxubufB5dTdJkZgPrwH3xlyIjqw1jgkPQiCH7qhCVBhpsn289nx6U1BiSImkosm16uChJ8Ua3XhZHLFpxynD67wXUchvhZ5CbLQz0btm6kqFW0TbhJISRAzbv70OwsDBCMs4aosm+SbC34BjbQNF3/kvI19gCXjTbgQY5at3ojfjCEyKFwXkIZoPryJWU6kqzdtKAW+TVt37vodw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000004, 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 Sun, Sep 15, 2024 at 5:04=E2=80=AFPM Oleg Nesterov wro= te: > > On 09/05, Andrii Nakryiko wrote: > > > > +static struct uprobe *find_active_uprobe_speculative(unsigned long bp_= vaddr) > > +{ > > + const vm_flags_t flags =3D VM_HUGETLB | VM_MAYEXEC | VM_MAYSHARE; > ... > > + if (!vm_file || (vma->vm_flags & flags) !=3D VM_MAYEXEC) > > + goto bail; > > Not that this can really simplify your patch, feel free to ignore, but I = don't > think you need to check vma->vm_flags. > > Yes, find_active_uprobe_rcu() does the same valid_vma(vma, false) check, = but it > too can/should be removed, afaics. yep, agreed, I'll see to simplify both, you points make total sense > > valid_vma(vma, false) makes sense in, say, unapply_uprobe() to quickly fi= lter > out vma's which can't have this bp installed, but not in the handle_swbp(= ) paths. > > Oleg. >