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 DC74BC282DE for ; Wed, 5 Mar 2025 19:59:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7C8E0280004; Wed, 5 Mar 2025 14:59:01 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 752AC280003; Wed, 5 Mar 2025 14:59:01 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5D277280004; Wed, 5 Mar 2025 14:59:01 -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 3A9B7280003 for ; Wed, 5 Mar 2025 14:59:01 -0500 (EST) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id C1F1380A4E for ; Wed, 5 Mar 2025 19:59:02 +0000 (UTC) X-FDA: 83188560924.28.EF74467 Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) by imf16.hostedemail.com (Postfix) with ESMTP id E15AD180004 for ; Wed, 5 Mar 2025 19:59:00 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=XIJalyHm; spf=pass (imf16.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.53 as permitted sender) smtp.mailfrom=andrii.nakryiko@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=1741204740; 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=T1PVaYBpq9076U3IWZXvGpb8FBXofDXNAhkbJyruFPI=; b=eDrVNMLi/g7sPTmJba9V5GupHV45M8Ps8Ahc6sD6KOBwjc3UruP8UxnTlKZYgMie58WVW5 XWVM9kEdbgyF4NGzS/C+s/681H8+MvX1qiIZgg6kZ42A5rCACrG+LD/FZlQUPXxipPluA3 e+S3oK48IXL9L8HOfcsMzF84XVR9YH8= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=XIJalyHm; spf=pass (imf16.hostedemail.com: domain of andrii.nakryiko@gmail.com designates 209.85.216.53 as permitted sender) smtp.mailfrom=andrii.nakryiko@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741204741; a=rsa-sha256; cv=none; b=z+STPt/HUGoEKfPKq8LVU7DhZfzoHfiQqydthBZlYYapuENZZ0MWQavpZOGlRmBiGTEjBA wBiGuFngOb8OrTfZAe0AiJsBGh2qSy+F6tVV8lJZxntBKm+tqTCg3IxOgt9sa3/acwfF/s U7MXwEhmT3sSlWZRenZsKaHkjFxZf7w= Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-2fe82414cf7so14336778a91.0 for ; Wed, 05 Mar 2025 11:59:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741204739; x=1741809539; 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=T1PVaYBpq9076U3IWZXvGpb8FBXofDXNAhkbJyruFPI=; b=XIJalyHmTIPz51iRKk1LjVOKDyvFaslKxivJpFxaRywHKwfOHsnxAd5s1Skk3kNTKf qIg4haqM4tCG3xw2MuNUocwzd6YcteaRwF9CXFd9cwHl4vw0Hmjb1cA1eOcqiqo0z9h4 aX4a4oLwUlru4fewP/kC+YWTMjSj5VVX7uz5AW8iZYS8013Yw7IIDLuSYJ30fCXGdKy4 E8M24lHQ3l6oHsUbHHL5zwsRGtYGkeN2Z+JGaIN9WtWcbix1mB2/WK+R8tcRrmLJQS0h mAEfdR+4CN8bQGmYi48QZjdYQhVxn2LQ3xgTudTzsRgiroo0R0toG59d/YTgbtvLYGIE aurg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741204739; x=1741809539; 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=T1PVaYBpq9076U3IWZXvGpb8FBXofDXNAhkbJyruFPI=; b=tpqxiE7rhSD200cyYk/qIanqqYaFZQzTbJHAS9Kme9rIVpI4x4G4e5bFu2bq6xk0jg GWi+8dx9ldCTow+tvO1Ei+vSaK81Sc/NcK2LKzffnJl6SIVpQjTSsYMmlKmEMZHYXEYn DjBr0x88ZJgAdPZSSi3RDnxEGSryNigAkBvQoZHNsLE9Tsd9HELjXCPmm6pDM8m+74CN qoLkpfKI9j8eTr1ShCWoTBoqJMNIKjcUZhAFeILx2dog6BpqI/QiDZoDb+ky5JXrT0lj fvhf9amjSR+TERTJxZbrDKuTZmjy6pg7XTJIhxrwfxLB2pS9tO2qC7CnQ1XIB6hHjgZq ozqA== X-Forwarded-Encrypted: i=1; AJvYcCWv27vzwORknDU0WDap+mpW+TCSkrm+BXbua9n3a+gubroIBvBBRGkiSNOHEJ9AKLHH1eGd1KZx6Q==@kvack.org X-Gm-Message-State: AOJu0YzkmzzwiYNtG99GUX+SAZZGH1mPFryF5jGYVfaRluHM3MwAZN8e tBklItoBMHGDxnzm+8ZGPOsEy66F4oD5wzz4+gOC1cRChrGUT+FYKtIUQCyGMDEkWfyY+g9pm9b fASSmwE2LIqwfRVtYlgDvIvmZCso= X-Gm-Gg: ASbGncv9uruFgi6bPFRPBovrmKNhkYR0WndgyLUeAxEuBlfFVvaFilPpwgwnkxur89e BJoVZWd59VB05GflkcxvYhTu2AeFhscV1gvfeCPwbhEW4ERLH5VoHK+8V/KXX/wSk63g+2Dg45g 9oFv+87eqiDxGUP5vpm4Sdp1my X-Google-Smtp-Source: AGHT+IFfV/6qDYoZwPNJLCBtJE8ZyU4iJr7//K16BTPN6XDyLemrI4fIv4EKbuBvHlLWUWsZ7sQslXNBrtC5L25iHmI= X-Received: by 2002:a17:90b:3d12:b0:2ff:5ed8:83d1 with SMTP id 98e67ed59e1d1-2ff5ed8d53fmr1796280a91.19.1741204739474; Wed, 05 Mar 2025 11:58:59 -0800 (PST) MIME-Version: 1.0 References: <20250304154846.1937958-1-david@redhat.com> <20250305152055.GB28112@redhat.com> <62f93f79-a8d4-44a5-b276-3ac5af4ab25c@redhat.com> In-Reply-To: <62f93f79-a8d4-44a5-b276-3ac5af4ab25c@redhat.com> From: Andrii Nakryiko Date: Wed, 5 Mar 2025 11:58:46 -0800 X-Gm-Features: AQ5f1JpNR9XR0Xgny3rOP3g1v3FV71Th_LHZWcRds0Sk3eNMx_5PJFuIV4e0zaU Message-ID: Subject: Re: [PATCH -next v1 0/3] kernel/events/uprobes: uprobe_write_opcode() rewrite To: David Hildenbrand Cc: Oleg Nesterov , Andrii Nakryiko , Jiri Olsa , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linux-trace-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, Andrew Morton , Matthew Wilcox , Russell King , Masami Hiramatsu , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Ian Rogers , Adrian Hunter , "Liang, Kan" , Tong Tiangen Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Queue-Id: E15AD180004 X-Rspamd-Server: rspam09 X-Stat-Signature: em4w46g4sr8d8or67kgoef9k38pzkrt5 X-HE-Tag: 1741204740-617829 X-HE-Meta: U2FsdGVkX19i+ZVP8pw3he6FM3X7biuqxLhrbXaadhoDV1DD3oAd5WNaXbQj+0rWIKwHyIhHvFdQqyqWJIPefZHmUOFgVGI31F5bzyHoDkkGRuOZ3BhGfxzdXdBk9+8AqrZsVrWsoGXuWQp8BWA1C2jKqbhcJaMDGvFk9vCgYQtA5JRaQUUNXCVXQN6l1xpKuTBjOoilZJaiGbAlT7GK840me51BPpY9zBDHbNDWGC6sjUNvYPPxqDewFBlhTXsSD0bgVjYMa0PSaIRgevqAR5ZRzSttD0ghsdrYQOp4SKS3YuLYoxI9Nx2mCp2PG9IMPT8VjarkGfhHkiwwIz16B4NnlJTJPV03qXJQuq7YJdAoJON8XdOTatMlOq3Q51pkygFqWAtZf7ZyJUFe1tUqAGUBIXXLzYbsIAQLGiXdql/5cjp6/GSM5aLex5Vs+WLX7QDX8WZrhbnTbZMnzvLjok50JbS0HY9U0qtkFRcK+1lVhy/kS/6h41rn00z3ooKASmh14YaTyFxIPOkcSWDJcM+w/C/u0Som9KaIOV1xrml1sTax2NqJQvByNN07bR6wVxFpH/GZwgfa9PdD2dY1Dxu2UcLgH0z0/iiGsofQUTpJ/unOa6O3OKfgmjFkKhdjGedctcsTz6FfanBZZ6uycTx/5hdoZkNI6L2bkz2VCdYTYUCFK+fML2FyL/FPZcDXvueGJh0L4khVqj//ww7B7/oCnaP6Eey4FYp+CJJujZrHH+VpR/p6n/Qtcley+IELchsheyWrSl3Z86S8wPEDcoQdfGEpVfK+cx67wNe/Y1DgsWTpcJs/OyMqoqgVoEeMpNCnXpPfmHQxArDJJSuGxm5aDUrZggAiYrnHOB/orZjCzhhd0GWj2JGRln7v3yrWn6ObO7q+R0zpgkmMy4jKYzRBHiYAXt4bcjgGG19u5O7Lfq8/LlKhdu6vhGVg6qH68licu+KAOlMQ9LzYSrm kuPDL8Ww TS/s/nxBEXQXkHbNCrZLNdgt/w3ugrWAAsy6T+PPnx3eu2DWRFOA+12kNYHpZA6J7hp8rAY2gCITXWKnWW0fAcbwKuiEISMwY8MjqH5GRNQtWNdvtRJ6LIBafU8OCstkE2RXC1adqjETRkqJCc0uW5sz22LPb5ZMqRF50U3NEbwMXEm0IMgcMHAv+qnQJJ7uRkpyKWQa7gjWmvu+NVTCPgxHPqVpgeuh8vzP2gB4cdOGor7YFeGzcGARzW4NbnyhOflst7Oj32VCagzoo2pKO/qS0ayScmzDKjtZHClcMJ9shHtnZjPRTDdxs7eFB4fcoceg/46J5v2s4zhlyBCCgcwU76obaR69k1mO9wTTNZ69QglV3RhoyOv9wPMw0tnJZkxSc1I/FjvZRampKK+XHSjwP/pst82VZjkOFjXqXBvFDOPkvlDkM5Js6Tl8b8qwm6qsBfiNNQ97gH5s= 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 Wed, Mar 5, 2025 at 11:47=E2=80=AFAM David Hildenbrand wrote: > > On 05.03.25 20:43, Andrii Nakryiko wrote: > > On Wed, Mar 5, 2025 at 7:22=E2=80=AFAM Oleg Nesterov = wrote: > >> > >> On 03/04, David Hildenbrand wrote: > >>> > >>> Currently, uprobe_write_opcode() implements COW-breaking manually, wh= ich is > >>> really far from ideal. > >> > >> To say at least ;) > >> > >> David, thanks for doing this. I'll try to read 3/3 tomorrow, but I don= 't > >> think I can really help. Let me repeat, this code was written many yea= rs > >> ago, I forgot everything, and today my understanding of mm/ is very po= or. > >> But I'll try anyway. > >> > >>> Are there any uprobe tests / benchmarks that are worth running? > >> > >> All I know about uprobe tests is that bpf people run a lot of tests wh= ich > >> use uprobes. > >> > >> Andrii, Jiri, what you advise? > >> > > > > We do have a bunch of tests within BPF selftests: > > > > cd tools/testing/selftest/bpf && make -j$(nproc) && sudo ./test_progs -= t uprobe > > I stumbled over them, but was so far not successful in building them in > my test VM (did not try too hard, though). Will try harder now that I > know that it actually tests uprobe properly :) If you have decently recent Clang and pahole, then just make sure you have kernel built before you build selftests. So above instructions are more like: 1. cd 2. cat tools/testing/selftests/bpf/{config, config.} >> .config 3. make -j$(nproc) # build kernel with that adjusted config 4. cd tools/testing/selftests/bpf 5. make -j$(nproc) # build BPF selftests 6. sudo ./test_progs -t uprobe # run selftests with "uprobe" in their name > > > > > I also built an uprobe-stress tool to validate uprobe optimizations I > > was doing, this one is the most stand-alone thing to use for testing, > > please consider checking that. You can find it at [0], and see also > > [1] and [2] where I was helping Peter to build it from sources, so > > that might be useful for you as well, if you run into problems with > > building. Running something like `sudo ./uprobe-stress -a10 -t5 -m5 > > -f3` would hammer on this quite a bit. > > Thanks, I'll play with that as well. > > > > > I'm just about to leave on a short vacation, so won't have time to go > > over patches, but I plan to look at them when I'm back next week. > > > > [0] https://github.com/libbpf/libbpf-bootstrap/tree/uprobe-stress > > [1] https://lore.kernel.org/linux-trace-kernel/CAEf4BzZ+ygwfk8FKn5AS= _Ny=3DigvGcFzdDLE2FjcvwjCKazEWMA@mail.gmail.com/ > > [2] https://lore.kernel.org/linux-trace-kernel/CAEf4BzZqKCR-EQz6LTi-= YvFY4RnYb_NnQXtwgZCv6aUo7gjkHg@mail.gmail.com > > > >> Oleg. > >> > > > > > -- > Cheers, > > David / dhildenb >